codecamp

swiper

基础库 1.0.0 开始支持本组件。

滑块视图容器,其中只可放置 swiper-item 组件,否则会导致未定义的行为。


属性说明

属性类型默认值必填说明最低支持版本
indicator-dotsbooleanfalse是否显示面板指示点1.0.0
indicator-colorstringrgba(0, 0, 0, .3)指示点颜色1.0.0
indicator-active-colorstringrgba(0, 0, 0, 0)当前选中的指示点颜色1.0.0
autoplaybooleanfalse是否自动切换1.0.0
currentnumber0当前选中滑块的 index1.0.0
current-item-idstring""当前选中滑块的组件 id,不能与 current 属性同时指定1.0.0
intervalnumber5000自动切换时间间隔1.0.0
previous-marginstring""前边距,可用于露出前一项的一小部分,接受 px 和 rpx 值1.0.0
next-marginstring""后边距,可用于露出后一项的一小部分,接受 px 和 rpx 值1.0.0
display-multiple-itemsnumber1同时显示的滑块数量1.0.0
durationnumber500滑动动画时长1.0.0
circularbooleanfalse是否循环播放(首尾衔接)1.0.0
verticalbooleanfalse滑块放置方向是否为竖直1.0.0
bindchangeeventhandlecurrent 改变时会触发 change 事件,event.detail = {current, source}1.0.0
bindanimationfinisheventhandle动画结束时会触发 animationfinish 事件,event.detail = {dx, dy}1.0.0
bindtransitioneventhandleswiper-item 产生位移时触发 transition 事件,event.detail = {dx, dy}1.20.0

change 事件的 source 字段表示导致改变的原因,有如下值:

  • autoplay:自动播放导致 swiper 变化
  • touch: 用户划动导致 swiper 变化
  • 空字符串:其他原因


效果示例


代码示例

<view class="page-section">
  <swiper
    indicator-dots="{{indicatorDots}}"
    autoplay="{{autoplay}}"
    interval="{{interval}}"
    duration="{{duration}}"
  >
    <block tt:for="{{background}}">
      <swiper-item>
        <view class="swiper-item {{item}}"></view>
      </swiper-item>
    </block>
  </swiper>
</view>
<view class="page-section">
  <view class="ttui-cells">
    <view class="ttui-cell">
      <view class="ttui-cell__bd">指示点</view>
      <view class="ttui-cell__ft">
        <switch checked="{{indicatorDots}}" bindchange="changeIndicatorDots" />
      </view>
    </view>
    <view class="ttui-cell">
      <view class="ttui-cell__bd">自动播放</view>
      <view class="ttui-cell__ft">
        <switch checked="{{autoplay}}" bindchange="changeAutoplay" />
      </view>
    </view>
  </view>
</view>
Page({
  data: {
    background: ["demo-text-1", "demo-text-2", "demo-text-3"],
    indicatorDots: true,
    vertical: false,
    autoplay: false,
    interval: 2000,
    duration: 500
  },
  changeIndicatorDots: function(e) {
    this.setData({
      indicatorDots: !this.data.indicatorDots
    });
  },
  changeAutoplay: function(e) {
    this.setData({
      autoplay: !this.data.autoplay
    });
  },
  intervalChange: function(e) {
    this.setData({
      interval: e.detail.value
    });
  },
  durationChange: function(e) {
    this.setData({
      duration: e.detail.value
    });
  }
});


scroll-view
swiper-item
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

字节跳动小程序 介绍

字节跳动小程序 开发

字节跳动小程序开发框架

字节跳动小程序开发框架基础说明

字节跳动小程序开发框架基础功能

字节跳动小程序开发框架逻辑层

无标题文章

无标题目录

API

无标题文章

无标题文章

无标题文章

无标题文章

无标题文章

无标题目录

无标题目录

无标题文章

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }