swiper 滑块视图容器,其原型以下:函数
1 <swiper 2 indicator-dots="[Boolean]" 3 indicator-color="[Color]" 4 indicator-active-color="[Color]" 5 autoplay="[Boolean]" 6 current="[Number]" 7 current-item-id="[String]" 8 interval="[Number]" 9 duration="[Number]" 10 circular="[Boolean]" 11 vertical="[Boolean]" 12 previous-margin="[String]" 13 next-margin="[String]" 14 display-multiple-items="[Number]" 15 skip-hidden-item-layout="[Boolean]" 16 bindchange="[EventHandle]" 17 bindanimationfinish="[EventHandle]" 18 > 19 <swiper-item item-id="[String]"><!-- 数据内容 --></swiper-item> 20 </swiper>
<swiper>组件属性说明:布局
属性 | 是否必需 | 类型 | 默认值 | 说明 |
indicator-dots | 否 | Boolean | false | 是否显示面板指示点,默认不显示(分页小圆点) |
indicator-color | 否 | Color | rgba(0, 0, 0, .3) | 指示点颜色 |
indicator-active-color | 否 | Color | #000000 | 当前选中的指示点颜色 |
autoplay | 否 | Boolean | false | 是否自动切换 |
current | 否 | Number | 0 | 当前所在滑块的 index |
current-item-id | 否 | String | 当前所在滑块的 item-id ,不能与 current 被同时指定 | |
interval | 否 | Number | 5000 | 自动切换时间间隔 |
duration | 否 | Number | 500 | 滑动动画时长 |
circular | 否 | Boolean | false | 是否采用衔接滑动(播到最后时再从第一个开始) |
vertical | 否 | Boolean | false | 滑动方向是否为纵向 |
previous-margin | 否 | String | 0px | 前边距,可用于露出前一项的一小部分,接受 px 和 rpx 值 |
next-margin | 否 | String | 0px | 后边距,可用于露出后一项的一小部分,接受 px 和 rpx 值 |
display-multiple-items | 否 | Number | 1 | 同时显示的滑块数量(好比能够在一屏内显示二个swiper-item,但翻屏时仍是一屏一翻) |
skip-hidden-item-layout | 否 | Boolean | false | 是否跳过未显示的滑块布局,设为 true 可优化复杂状况下的滑动性能,但会丢失隐藏状态滑块的布局信息(功能暂时不能理解) |
bindchange | 否 | EventHandle | current 改变时会触发 change 事件性能 EventHandle函数自带参数event优化 event.detail = {current: current, source: source}动画 event.detail.source返回滑块变动的缘由,可能值以下:spa 1) 'autoplay' 自动播放致使swiper变化;code 2) 'touch' 用户划动引发swiper变化;blog 3) 空字符串,表示其余缘由。事件 |
|
bindanimationfinish | 否 | EventHandle | 动画结束时会触发,EventHandle函数参数同bindchange |
<swiper-item>组件属性说明:ip
属性 | 是否必须 | 类型 | 默认值 | 说明 |
item-id | 否 | String | 该 swiper-item 的标识符 |
注意事项:
1)swiper由<swiper>、<swiper-item>两部份组成。
2) swiper内只可放置<swiper-item/>组件,不然会致使未定义的行为。
3)swiper-item组件仅可放置在swiper内,宽高自动设置为100%。
4)若是在 bindchange 的事件回调函数中使用 setData 改变 current 值,则有可能致使 setData 被不停地调用,于是一般状况下请在改变 current 值前检测 source 字段来判断是不是因为用户触摸引发。
5)bindchange事件在开始切换时触发,bindanimationfinish事件在切换完成时触发。bindchange事件提早于bindanimationfinish事件。