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


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 相关文章推荐
利用JQuery为搜索栏增加tag提示
Jun 22 Javascript
javascript 定义新对象方法
Feb 20 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
Dec 11 Javascript
jQuery中:text选择器用法实例
Jan 03 Javascript
javascript模拟map输出与去除重复项的方法
Feb 09 Javascript
谈谈JavaScript类型系统之Math
Jan 06 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
Jun 29 Javascript
浅谈javascript的闭包
Jan 23 Javascript
浅谈Angular 中何时取消订阅
Nov 22 Javascript
vue多次循环操作示例
Feb 08 Javascript
Node.js之readline模块的使用详解
Mar 25 Javascript
vue中后端做Excel导出功能返回数据流前端的处理操作
Sep 08 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加Nginx实现动态裁剪图片方案
2014/03/10 PHP
php中的常用魔术方法汇总
2016/02/14 PHP
PHP中抽象类、接口的区别与选择分析
2016/03/29 PHP
php解析base64数据生成图片的方法
2016/12/06 PHP
PHP实现活动人选抽奖功能
2017/04/19 PHP
php实现socket推送技术的示例
2017/12/20 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
浏览器兼容console对象的简要解决方案分享
2013/10/24 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
javascript数字时钟示例分享
2014/04/23 Javascript
Yii2使用Bootbox插件实现自定义弹窗
2015/04/02 Javascript
使用纯javascript实现经典扫雷游戏
2015/04/23 Javascript
javascript实现的右下角弹窗实例
2015/04/24 Javascript
原生js实现模拟滚动条
2015/06/15 Javascript
js操作数组函数实例小结
2015/12/10 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
浅谈使用splice函数对数组中的元素进行删除时的注意事项
2016/12/04 Javascript
利用jquery实现实时更新歌词的方法
2017/01/06 Javascript
JavaScript订单操作小程序完整版
2017/06/23 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
vue中echarts3.0自适应的方法
2018/02/26 Javascript
我要点爆”微信小程序云开发之项目建立与我的页面功能实现
2019/05/26 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
Python中Iterator迭代器的使用杂谈
2016/06/20 Python
python使用pycharm环境调用opencv库
2018/02/11 Python
设置python3为默认python的方法
2018/10/31 Python
python 返回列表中某个值的索引方法
2018/11/07 Python
细说NumPy数组的四种乘法的使用
2020/12/18 Python
英国床垫在线:Mattress Online
2016/12/07 全球购物
意大利奢华内衣制造商:Cosabella
2017/08/29 全球购物
优秀的毕业生的自我评价
2013/12/12 职场文书
优秀的计算机专业求职信范文
2013/12/27 职场文书
学习委员自我鉴定
2014/01/13 职场文书
幼儿园安全工作总结2015
2015/04/20 职场文书
导游词之海南-南湾猴岛
2019/10/12 职场文书