滑块视图容器   swiper

属性名 类型 默认值 说明
indicator-dots Boolean false 是否显示面板指示点
autoplay Boolean false 是否自动切换
current Number 0 当前所在页面的 index
interval Number 5000 自动切换时间间隔
duration Number 1000 滑动动画时长
bindchange EventHandle   current 改变时会触发 change 事件,event.detail = {current: current}

注意:其中只可放置<swiper-item/>组件,其他节点会被自动删除。

swiper-item

仅可放置在<swiper/>组件中,宽高自动设置为100%。

<view class="page">

<view class="page__hd">

<text class="page__title">swiper</text>

<text class="page__desc">swiper</text>

</view>

<view class="page__bd">

<view class="section section_gap swiper">

<swiper indicator-dots="{{indicatorDots}}" vertical="{{vertical}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">

<block wx:for="{{background}}">

<swiper-item>

<view class="swiper-item bc_{{item}}"></view>

</swiper-item>

</block>

</swiper>

</view>

<view class="btn-area">

<button type="default" bindtap="changeIndeicatoirDots">indicator-dots</button>

<button type="default" bindtap="changeVertical"> {{vertical?‘horizontal‘:‘vertical‘}}</button>

<button type="default" bindtap="changeAutoplay">autoplay</button>

</view>

<slider bindchange="durationChange" value="{{duration}}" show-value min="500" max="2000" />

<view class="section__title">duration</view>

<slider bindchange="intervalChange" value="{{interval}}" show-value min="2000" max="10000" />

<view class="section__title">interval</view>

</view>

</view>

Page({

data:{

background:[‘green‘,‘red‘,‘yellow‘],

indicatorDots:true,

vertical:false,

autoplay:true,

interval:3000,

duration:1200

},

changeIndeicatoirDots : function (e) {

this.setData({

indicatorDots : !this.data.indicatorDots

})

},

changeVertical : function (e) {

this.setData({

vertical: !this.data.vertical

})

},

changeAutoplay: function (e){

this.setData({

autoplay:!this.data.autoplay

})

},

durationChange: function (e){

this.setData({

duration:e.detail.value

})

},

intervalChange: function (e) {

this.setData({

interval:e.detail.value

})

}

})

item单击事件

在 swiper-item 上绑定事件,通过 data 自定义标签绑定数据。然后在function中通过event拿到。

<!--main.wxml--><view>    <swiper class="swiper_box" indicator-dots="{{indicatorDots}}" vertical="{{vertical}}"            autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" bindchange="swiperchange">        <block wx:for="{{images}}">            <swiper-item bindtap="itemclick" data-id="{{item.id}}" data-name="{{item.name}}">                <image src="{{item.picurl}}" class="slide-image"/>            </swiper-item>        </block>    </swiper></view>

1234567891011

注意代码中的 data-id 和 data-name 均为自定义标签,然后可以在绑定事件的event中通过 id 和 name 拿到。

// 轮播item点击事件itemclick: function(e) {    wx.showToast({        title: e.currentTarget.dataset.id + "",        icon: ‘success‘,        duration: 2000    })},

12345678

注意在绑定的function中可以通过event拿到对应的数据。如:e.currentTarget.dataset.id 对应wxml中的data-id

当然,还有另一种办法。不需要绑定事件,通过在每一个的 swiper-item 外面包上一个 a 标签,以超链接的方式跳转页面。

时间: 2024-11-04 19:43:59

滑块视图容器   swiper的相关文章

微信小程序组件解读和分析:三、swiper滑块视图

swiper滑块组件说明: 滑块视图容器,用于展示图片,可以通过用户拖拽和设置自动切换属性控制图片的切换 组件的使用示例的运行效果如下: 下面是WXML代码: [XML] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 11 12 13 [/align] <swiper indicator-dots="{{indicatorDots}}"   autoplay="{{autoplay}}" interval="{

小程序开发基础-view视图容器

view视图容器. // wxml<view class="section"><view class="section__title">flex-direction: row</view><view class="flex-wrp_one"><view class="flex-item bc_green">1</view><view class=&q

视图容器组件使用

1.scroll-view  可滚动视图区域: index.wxml: <!--index.wxml--> <view class="container"> <scroll-view scroll-y="true" style="height: 200px;"> <view id="green" class="scroll-view-item bc_green"&g

微信小程序之可滚动视图容器组件 scroll-view

1. 纵向滚动 scroll-y 当 设置为scroll-y 时, 需要将其高度设为固定值 如果整个页面,即最外层标签为scroll-view,需要并将其高度设为100%,也需要将page设为100%(可在app.wxss中设置). 示例: html 文件: <!--pages/index/index.wxml--> <scroll-view scroll-y="true" lower-threshold="50" bindscrolltolowe

微信小程序(3)——常用的组件

view: view是小程序中的视图容器之一,似于html中的<div>标签 <view class="section"> <view class="section__title">flex-direction: row</view> <view class="flex-wrp" style="flex-direction:row;"> <view class=

微信小程序学习 动手撸一个校园网小程序

动手撸一个校园网微信小程序 高考完毕,想必广大学子和家长们都在忙着查询各所高校的信息,刚好上手微信小程序,当练手也当为自己的学校做点宣传,便当即撸了一个校园网微信小程序. 效果预览 源码地址:Github??求你的小星星- 准备工作 微信小程序开发者工具:腾讯开放了小程序个人开发平台,只需要一个微信号就可以成为小程序开发者了. 微信小程序设计指南:由于小程序是一个平台,所以平台上的开发者必须要遵守规范. ?easy-mock:使用easy-mock模拟后端数据,后面会简单介绍配置. 七牛云:使用

如何自定义微信小程序swiper轮播图面板指示点的样式

https://www.cnblogs.com/myboogle/p/6278163.html 微信小程序的swiper组件是滑块视图容器,也就是说平常我们看到的轮播图就可以用它来做,不过这个组件有很多样式是固定的,但是,有时候我们的设计稿的面板指示点是需要个性化的,那么如何去修改swiper组件的面板指示点的样式呢?最近在使用swiper的时候也在想这个,最后发现在调试的时候,可以看到他的选择器.如图: <swiper class="swiper-box" indicator-

微信小程序swiper 前后边距的使用

小程序中有一个组件swiper 就是滑块视图容器 其中提供了两个属性 previous-margin:前边距,可用于露出前一项的一小部分       next-margin:后边距,可用于露出后一项的一小部分 假设设置 一个view的尺寸为宽为600rpx,高为600rpx,前边距为30rpx,后边距为30rpx,最终呈现结果是这样的 图一和图二     图三 这是将图片尺寸设置跟屏幕宽一样的尺寸,然后就没有之间的空白间隙了,所有得为图片加上空白间距 但这并不是想要的结果,其实边距指的是后面那张

【swiper】 组件说明

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]&qu