小程序开发基础-swiper 滑块视图容器
小编 / 达叔小生
参考官方文档:https://developers.weixin.qq.com/miniprogram/dev/component/
小程序开发基础-swiper 滑块视图容器
根据官方文档,在自己的程序上运行,并打进代码的效果图,swiper
滑块视图容器,是用来展示图片,控制图片的
swiper
为滑块视图容器,其实就是轮播图的效果。
代码中indicator-dots="{{indicatorDots}}"
的效果是用来显示指示点的,就是图片中下方的小圆圈。
autoplay="{{autoplay}}"
为是否可以自动切换的效果,如果不设置,那就只有一张图片显示到界面中。
current="0"
为当前显示在哪个滑块,为啥为0
,因为默认值为0
,可知从零开始算起嘛。
interval="{{interval}}"
为自动切换时间的间隔,表示每张图片显示到它设定的时间就开始切换到下一个视图即图片,如果设定为3000
即3
秒,那么图片展示到3
秒后,进入到下一个图片。
duration="{{duration}}"
为滑动动画时长,怎么理解呢?就是第一张图片切换到第二张图片的时长,即第一张滑出,第二张滑入到完,所用的时间长而已。
circular="{{circular}}"
为是否采用衔接滑动,怎么理解呢?衔接?如果这个属性不设定,那么如果轮播图是三张图片,第一张展示到第三张即最后展示完,它会返回到第一张,那样的效果会不好看。如果设定了该属性,且为true
的话,那么展示完后,直接进入到第一张图的界面。
<!--index.wxml-->
<swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" circular='{{circular}}' current="0">
// 用于展示轮播图效果
<block wx:for="{{imgUrls}}">
<swiper-item>
<image src="{{item}}" class="slide-image" width="355" height="150" />
</swiper-item>
</block>
</swiper>
// 用于定义是否显示面板指示点
<button bindtap="changeIndicatorDots"> indicator-dots </button>
// 用于定义是否自动切换
<button bindtap="changeAutoplay"> autoplay </button>
// 滑动进度,这个按钮效果用于更改自动切换时间间隔
<slider bindchange="intervalChange" show-value min="500" max="2000" /> interval
// 滑动进度,这个按钮效果用于更改滑动动画时长
<slider bindchange="durationChange" show-value min="1000" max="10000" /> duration
swiper的属性
属性 | 说明 |
---|---|
indicator-dots | 表示显示面板的指示点,图片下的小圆圈 |
indicator-color | 表示指示点的颜色 |
indicator-active-color | 表示当前选中的指示点颜色 |
autoplay | 表示为是否自动切换 |
current | 表示当前所在的滑块 index |
current-item-id | 当前所在滑块的 item-id ,不能与current 被同时指定 |
interval | 表示自动切换时间间隔 |
duration | 表示为滑动动画时长 |
circular | 表示是否采用衔接滑动 |
previous-margin | 表示前边距,用于露出前一项的一小部分,接受 px 和 rpx 值,就是在整块模板中露出前一项的一小部分 |
next-margin | 表示后边距,与上述同理 |
display-multiple-items | 表示显示的滑块数量,就是显示多少张图在界面上,默认为1 ,如果定位2 ,那么就两张图片设定在界面上,界面各自分一半 |
skip-hidden-item-layout | 表示是否跳过未显示的滑块布局,设为 true 可优化复杂情况下的滑动性能,但会丢失隐藏状态滑块的布局信息 |
bindchange | current 改变时会触发 change 事件,event.detail = {current: current, source: source} |
bindanimationfinish | 动画结束时会触发 animationfinish 事件,event.detail 同上 |
//index.js
Page({
data: {
imgUrls: [
'http://img02.tooopen.com/images/20150928/tooopen_sy_143912755726.jpg',
'http://img06.tooopen.com/images/20160818/tooopen_sy_175866434296.jpg',
'http://img06.tooopen.com/images/20160818/tooopen_sy_175833047715.jpg'
],
indicatorDots: true,
circular: true,
autoplay: true,
interval: 2000,
duration: 1000
},
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
})
}
})
在js
中图片资源来源于官方文档,四种改变效果函数,changeIndicatorDots
(显示指示点),changeAutoplay
(是否自动轮播),intervalChange
(展示效果时长),durationChange
(切换时间时长)
/**index.wxss**/
.slide-image{
width: 100%;
}
wxss
只是让图片宽度占满父元素而已。
注意事项
检测 source
字段判断是否由于用户触摸引起 ^ v ^
开源github分享
Wechat_small_program_Share
微信小程序分享
小程序开发基础-swiper 滑块视图容器的更多相关文章
- 小程序开发基础-scroll-view 可滚动视图区域
小编 / 达叔小生 小程序开发基础-scroll-view 可滚动视图区域 这里只展示纵向滚动,横向同理就不用说明了,可自己尝试,横向滚动属性为scroll-x,把纵向滚动改为横向滚动即可. scro ...
- 微信小程序开发基础
前言: 微信小程序开入入门,如果你有html+css+javascript的基础,那么你就很快地上手掌握的.下面提供微信小程序官方地址:https://developers.weixin.qq.com ...
- 小程序开发-基础组件icon/text/progress入门
小程序的基础组件--基础内容 基础内容分为三大组件: 1. icon--图标 index.wxml <view class="group"> <block wx: ...
- 小程序开发基础-view视图容器
view 视图容器. // wxml <view class="section"> <view class="section__title"& ...
- 微信小程序开发基础知识总结
微信小程序在无论在功能.文档及相关支持方面,都是优于前面几种微信账号类型,它提供了很多原生程序才有的接口,使得我们的小程序在很多方面突破H5页面应用的限制,更加接近原生程序的功能,因此微信小程序具有很 ...
- 小程序swiper 滑块视图容器
属性名 类型 默认值 说明 最低版本 indicator-dots Boolean false 是否显示面板指示点 indicator-color Color rgba(0, 0, 0, .3) 指示 ...
- 微信小程序开发之初探
本文是以一个简单的小例子,来简要讲解微信小程序开发步骤,希望促进学习分享. 概念 微信小程序,简称小程序,缩写xcx,英文mini program.是一种不需要下载安装即可使用的应用,它实现了应用“触 ...
- 微信小程序开发心得
微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...
- 微信小程序开发心得--动画机制
微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受.首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司认 ...
随机推荐
- CentOS开机提示kernel panic - not syncing: Attempted to kill init! 解决方法
1.重新启动linux 系统,看见如图见面迅速按E键 2.看见如图界面在按E键编辑 3.如图界面使用上下键选择第二个在按E键 4.在最后一行后面添加 enforcing=0 按回车保存退出 5.在此 ...
- 定时执行自动化脚本-(一)导入保存jmeter参数至文件的jar包
1.先完成jmeter脚本编写,具体怎么写此处不再详述,可以参考其他文档. 2.有时你会发现jmeter脚本执行后,有些响应信息你需要提取到文件中,以便后续使用: 怎么实现呢?个人思路就是,先写个ja ...
- 微信小程序发送ajax
微信小程序通过 wx.request发送ajax请求 1. GET wx.request({ url: app.globalData.pubSiteUrl + 'user-information/ge ...
- oracle 数据库去重复数据
delete from 表名 a where rowid !=(select max(rowid) from 表名 b where a.ORDER_ID=b.ORDER_ID) 例:如果重复的数据表是 ...
- 《笨方法学Python》加分题35
sys.exit 用于结束程序 from sys import exit # 进入黄金房间后的逻辑 def gold_room(): print("This room is full of ...
- spring 406 (Not Acceptable)错误
@Controller @RequestMapping("/login") public class LoginController { @ResponseBody @Reques ...
- 01-SpringMVC 原理
说明:所有代码调式的环境:开发环境idea,jdk7,tomcat8.5.27,数据库MySQL5.1,spring3.2 SpringMVC 1.什么是SpringMVC? springmvc是sp ...
- jquery datatables+MVC+WCF
view @{ Layout = null;} <!DOCTYPE html><html><head> <title>111</title> ...
- HDU-6153 A Secret 扩展KMP
题意:求一个字符串的所有后缀在母串中的出现次数*后缀的长度的总和. 题目链接:http://acm.split.hdu.edu.cn/viewcode.php?rid=22147273 思路:先预处理 ...
- C语言字符串和十六进制的相互转换方式
C语言的字符串操作并不像java,Csharp那样提供直接的方法,简单粗暴.所以,在转换的时候往往费力费时,近日做项目正好用到和java程序通讯,java发送过来的数据是十六进制数字组成的字符串,解析 ...