<!-- 滚动图 -->
<view class="swiper" style="position:relative">
<swiper autoplay="{{true}}" circular="{{true}}" onChange="currentHandle">
<block a:for="{{swiperList}}">
<swiper-item class="swiper-box">
<view class="swiper-item" style="width:100%height:300rpx">
<!-- lazy-load根据需要 onTap可以点击图片跳转 data-url绑定到跳转的链接-->
<image lazy-load="{{true}}" mode="scaleToFill" src="{{item.image}}" style="display:flexwidth:100%height:300rpx"
onTap="swiper" data-url="{{item.url}}" data-index='{{index}}' />
</view>
</swiper-item>
</block>
</swiper>
<!-- 圆点 -->
<view class="swiper_dot">
<view class="trans MR10 {{current === index ?'active': ''}}" a:for="{{swiperList}}" a:key="{{index}}"></view>
</view>
</view>
```
```
data(){
swiperList:[
{
image:'',//图片的路径
url:""//要跳转的路径
},
{
image:'',
url:""
}
],
current: 0,//初始化dot
},
//监听current
currentHandle(e) {
console.log(e)
//改变current的值
let { current } = e.detail
this.setData({
current
})
},
```
```
.swiper-box {
padding: 0 30rpx
}
.swiper-item {
border-radius: 10rpx
overflow: hidden
}
.swiper_dot {
display: flex
flex: 1
justify-content: center
position: absolute
bottom: 16rpx
left: 42%//通过绝对定位 在滚动图的正下方 具体看自己
}
.MR10 {
margin-right: 10rpx
}
.trans {
width: 23rpx
height: 8rpx
background-color: #ffffff70
border-radius: 3.5rpx
transition: width 0.5s linear
}
.active {
background-color: #ffffffd7
width: 67rpx
transition: width 0.5s linear
}
```
---转自我的自个的
支付宝小程序Swiper 滚动图 带圆点和跳转方式_多甘范科夫斯基的博客-CSDN博客
<div class="swiper-container">--首先定义一个容器<div class="swiper-wrapper">
<div class="swiper-slide"><img src="" /></div>--添加图片
<div class="swiper-slide"><img src="" /></div>
<div class="swiper-slide"><img src="" /></div>
</div>
<div class="swiper-pagination"></div>--小圆点分页器
<div class="swiper-button-prev"></div>--上一页
<div class="swiper-button-next"></div>--下一页
</div>
复制代码
如果想让它动起来,那就继续来写js吧
复制代码
var mySwiper = new Swiper(".swiper-container",{
autoplay:1000,--每秒中轮播一次
loop:true,--可以让图片循环轮播
autoplayDisableOnInteraction:false,--在点击之后可以继续实现轮播
pagination:".swiper-pagination",--让小圆点显示
paginationClickable:true,--实现小圆点点击
prevButton:".swiper-button-prev",--实现上一页的点击
nextButton:".swiper-button-next",--实现下一页的点击
effect:"flip"--可以实现3D效果的轮播
})
复制代码
Swiper轮播的也有它的好处:
1.Swiper是纯javascript打造的滑动特效插件,面向手机、平板电脑等移动终端。
2.Swiper能实现触屏焦点图、触屏Tab切换、触屏多图切换等常用效果。
3.Swiper开源、免费、稳定、使用简单、功能强大,是架构移动终端网站的重要选择!
同时也有不足之处:(使用Swiper轮播插件ajax请求加载图片时,无法滑动的问题)
因为banner图是动态创建的,在插件开始初始化时,文档流中没用图片,所以没有创建相应宽度,通过调整js加载顺序,问题还是没有解决。
最后找到swiper插件 api 有属性是可以根据内容变动,自动初始化插件的,添加observer:true后问题解决!
var mySwiper = new Swiper ('.swiper-container', {
pagination: '.swiper-pagination',
autoplay: 5000,
loop: true,
observer:true,//修改swiper自己或子元素时,自动初始化swiper
observeParents:true,//修改swiper的父元素时,自动初始化swiper
})
Swiper拥有丰富的API接口。(不过关于中文文档不多,没找着。)能够让开发者生成个人独有的分页器(pagination),上下滑块的按钮
以及4个回调函数:1.onTouchStart
2.onTouchMove
3.onTouchEnd
4.onSlideSwitch。
以上内容是我个人总结,希望对各位有所帮助!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)