微信小程序模板之分页滑动栏


Posted in Javascript onFebruary 10, 2017

本文实例为大家分享了微信小程序分页滑动栏的具体代码,供大家参考,具体内容如下

功能:

1.分页栏与滑动视图绑定
2.点击分页栏自动滑动到对应视图
3.滑动的到视图对应分页栏自动显示选中样式

效果图

微信小程序模板之分页滑动栏

上代码

wxml

<view class="tapNav">
 <view class="{{tabArr.tabCurrentIndex==0?'active':''}}" data-index="0" bindtap="veHandle">分页标签1</view>
 <view class="{{tabArr.tabCurrentIndex==1?'active':''}}" data-index="1" bindtap="veHandle">分页标签2</view>
 <view class="{{tabArr.tabCurrentIndex==2?'active':''}}" data-index="2" bindtap="veHandle">分页标签3</view>
</view>
<swiper id="swiper" indicator-dots="{{indicatorDots}}"
 autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" current="{{current}}" bindchange="swiperChange">
 <block wx:for="{{imgUrls}}">
 <swiper-item id="swiper-item">
  <image id="imgae" src="{{item}}" class="slide-image" width="355" height="150"/>
 </swiper-item>
 </block>

</swiper>

wxss

/*
1.横向排列分页标签
2.每个分页标签各占1/3
*/
.tapNav {
 display: flex;
 flex-direction: row;
}
.tapNav view{
 flex:1;
 width:200rpx;
 height:100rpx;
 text-align: center;
 line-height: 100rpx;
 font-family: "微软雅黑";
}
/*选中样式*/
.tapNav .active {
 color:blue;
 border-bottom:4rpx solid mediumseagreen;
}
#swiper {
 margin-top:40rpx;
}
#swiper image{
 width:100%;
}

js

//index.js
//获取应用实例
var app = getApp()
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,
 //自动播放
 autoplay: true,
 //切换时间间隔
 interval: 2000,
 //滑动时长
 duration: 1000,
 //存放滑动视图的current
 current:0,
 //分页标签class条件判断的值
 tabArr:{
  tabCurrentIndex:0
 }
 },
 //事件处理函数
 //触摸分页标签触发事件
 veHandle:function(e){
 //每个分页标签都设置了data-index,触摸触发事件获取此数值
 //用此数值替换滑动视图的current
 //用此数值替换分页标签class判断的值
 console.log(e.target.dataset.index)
 var currentIndex = e.target.dataset.index
 this.setData({
  current:currentIndex,
  "tabArr.tabCurrentIndex":currentIndex
 })
 },
 //通过滑块视图的current改变触发事件
 swiperChange:function(e){
 //获取视图滑块当前的current
 //用此数值替换分页标签的current的值
 console.log(e.detail.current)
 var swiperCurrent = e.detail.current;
 this.setData({
  'tabArr.tabCurrentIndex':swiperCurrent
 })
 },
 onLoad: function () {
 console.log('onLoad')
 }
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
复选框全选与全不选操作实现思路
Aug 18 Javascript
IE6-8中Date不支持toISOString的修复方法
May 04 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
Jun 19 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
May 30 Javascript
浅谈json取值(对象和数组)
Jun 24 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
Nov 01 Javascript
Bootstrap Modal遮罩弹出层(完整版)
Nov 21 Javascript
Javascript操作dom对象之select全面解析
Apr 24 Javascript
js获取一组日期中最近连续的天数
May 25 Javascript
详解Vue中的scoped及穿透方法
Apr 18 Javascript
微信小程序聊天功能的示例代码
Jan 13 Javascript
Vue基于localStorage存储信息代码实例
Nov 16 Javascript
三种方式实现瀑布流布局
Feb 10 #Javascript
vuejs通过filterBy、orderBy实现搜索筛选、降序排序数据
Oct 26 #Javascript
Ionic+AngularJS实现登录和注册带验证功能
Feb 09 #Javascript
javascript常用的设计模式
Feb 09 #Javascript
简单实现js选项卡切换效果
Feb 09 #Javascript
原生JS轮播图插件
Feb 09 #Javascript
jQuery页面弹出框实现文件上传
Feb 09 #Javascript
You might like
详解PHP处理密码的几种方式
2016/11/30 PHP
Javascript中的相等与不等运算
2010/04/25 Javascript
Javascript实现的鼠标经过时播放声音
2010/05/18 Javascript
jQuery的deferred对象使用详解
2011/08/20 Javascript
获取客户端电脑日期时间js代码(jquery)
2012/09/12 Javascript
通过一段代码简单说js中的this的使用
2013/07/23 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
用js模拟struts2的多action调用示例
2014/05/19 Javascript
js使用for循环查询数组中是否存在某个值
2014/08/12 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
js控制TR的显示隐藏
2016/03/04 Javascript
使用 jQuery.ajax 上传带文件的表单遇到的问题
2016/10/31 Javascript
React + webpack 环境配置的方法步骤
2017/09/07 Javascript
AngularJs分页插件使用详解
2018/06/30 Javascript
解决vue-cli webpack打包后加载资源的路径问题
2018/09/25 Javascript
Angular6 发送手机验证码按钮倒计时效果实现方法
2019/01/08 Javascript
vue+django实现一对一聊天功能的实例代码
2019/07/17 Javascript
bootstrap table实现横向合并与纵向合并
2019/07/18 Javascript
vue prop属性传值与传引用示例
2019/11/13 Javascript
[22:59]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
详谈python read readline readlines的区别
2017/09/22 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
Python走楼梯问题解决方法示例
2018/07/25 Python
Python爬虫实现抓取京东店铺信息及下载图片功能示例
2018/08/07 Python
python安装本地whl的实例步骤
2019/10/12 Python
Python 中 -m 的典型用法、原理解析与发展演变
2019/11/11 Python
Python实现图片识别加翻译功能
2019/12/26 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
通信生自我鉴定
2014/01/18 职场文书
《都江堰》教学反思
2014/02/07 职场文书
《我的信念》教学反思
2014/02/15 职场文书
投标承诺函范文
2015/01/21 职场文书
最新的离婚协议书范本!
2019/07/02 职场文书
Python实现文字pdf转换图片pdf效果
2022/04/03 Python
MySQL库表太大怎么办? 数据库分库分表项目实践
2022/04/11 MySQL