微信小程序 tabs选项卡效果的实现


Posted in Javascript onJanuary 05, 2017

微信小程序 tabs选项卡效果

前言:

最近微信应用号是炒的如火如荼,热门满满,但是也可以发现搜索关键词出来,各类网站出现的还都是微信的官方文档解释。正好赶上这个热潮,这几天先把小程序技术文档看了个遍,就直接着手写案例了。很多组件微信内部已经封装完了,正好发现没有tab选项卡效果,这两天正好研究了下。思路如下:

1.首先点击导航的时候需要两个变量,一个存储当前点击样式类,一个是其它导航默认的样式类

2.选项卡内容列表同样也需要两个变量,一个存储当前显示块,一个存储的是其它隐藏的默认块

3.使用三目运算通过点击获取导航索引,根据索引判断是否添加当前类【备注,这里我将点击事件绑定在父级导航栏,通过target对象得到点击触发的事件对象属性】

请结合如下效果图:

微信小程序 tabs选项卡效果的实现

 接下来直接查看源码:

demo.wxml:

<view class="tab"> 
<view class="tab-left" bindtap="tabFun"> 
 <view class="{{tabArr.curHdIndex=='0'? 'active' : ''}}" id="tab-hd01" data-id="0">tab-hd01</view> 
 <view class="{{tabArr.curHdIndex=='1'? 'active' : ''}}" id="tab-hd02" data-id="1">tab-hd01</view> 
 <view class="{{tabArr.curHdIndex=='2'? 'active' : ''}}" id="tab-hd03" data-id="2">tab-hd01</view> 
 <view class="{{tabArr.curHdIndex=='3'? 'active' : ''}}" id="tab-hd04" data-id="3">tab-hd01</view> 
</view> 

<view class="tab-right"> 
 <view class="right-item {{tabArr.curBdIndex=='0'? 'active' : ''}}">tab-bd01</view> 
 <view class="right-item {{tabArr.curBdIndex=='1'? 'active' : ''}}">tab-bd02</view> 
 <view class="right-item {{tabArr.curBdIndex=='2'? 'active' : ''}}">tab-bd03</view> 
 <view class="right-item {{tabArr.curBdIndex=='3'? 'active' : ''}}">tab-bd04</view> 
</view> 
</view>

demo.js:

Page( { 
data: { 
 tabArr: { 
  curHdIndex: 0, 
  curBdIndex: 0 
 }, 
}, 
tabFun: function(e){ 
 //获取触发事件组件的dataset属性 
 var _datasetId=e.target.dataset.id; 
 console.log("----"+_datasetId+"----"); 
 var _obj={}; 
 _obj.curHdIndex=_datasetId; 
 _obj.curBdIndex=_datasetId; 
 this.setData({ 
  tabArr: _obj 
 }); 
}, 
onLoad: function( options ) { 
 alert( "------" ); 
} 
});

demo.wxss:

.tab{ 
 display: flex; 
 flex-direction: row; 
} 
.tab-left{ 
 width: 200rpx; 
 line-height: 160%; 
 border-right: solid 1px gray; 
} 
.tab-left view{ 
 border-bottom: solid 1px red; 
} 
.tab-left .active{ 
 color: #f00; 
} 
.tab-right{ 
 line-height: 160%; 
} 
.tab-right .right-item{ 
 padding-left: 15rpx; 
 display: none; 
} 
.tab-right .right-item.active{ 
 display: block; 
}

最终演示效果如下:

微信小程序 tabs选项卡效果的实现

微信小程序 tabs选项卡效果的实现

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
读jQuery之十 事件模块概述
Jun 27 Javascript
jquery 选择器引擎sizzle浅析
Feb 06 Javascript
javaScript 页面自动加载事件详解
Feb 10 Javascript
Jquery Ajax方法传值到action的方法
May 11 Javascript
轻松实现Bootstrap图片轮播
Apr 20 Javascript
浅谈js图片前端预览之filereader和window.URL.createObjectURL
Jun 30 Javascript
概述VUE2.0不可忽视的很多变化
Sep 25 Javascript
react.js CMS 删除功能的实现方法
Apr 17 Javascript
javascript 中select框触发事件过程的分析
Aug 01 Javascript
小试SVG之新手小白入门教程
Jan 08 Javascript
JavaScript使用Math.random()生成简单的验证码
Jan 21 Javascript
微信小程序云开发之模拟后台增删改查
May 16 Javascript
jQuery密码强度验证控件使用详解
Jan 05 #Javascript
jquery广告无缝轮播实例
Jan 05 #Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
Jan 05 #Javascript
javascript添加前置0(补零)的几种方法
Jan 05 #Javascript
微信小程序 实战实例开发流程详细介绍
Jan 05 #Javascript
利用jquery禁止外层滚动条的滚动
Jan 05 #Javascript
bootstrap table配置参数例子
Jan 05 #Javascript
You might like
php设计模式 Bridge (桥接模式)
2011/06/26 PHP
使用Linux五年积累的一些经验技巧
2013/06/20 PHP
Netbeans 8.2与PHP相关的新特性介绍
2016/10/08 PHP
php ActiveMQ的安装与使用方法图文教程
2020/02/23 PHP
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
jquery中append()与appendto()用法分析
2014/11/14 Javascript
javascript与css3动画结合使用小结
2015/03/11 Javascript
javascript实现控制的多级下拉菜单
2015/07/05 Javascript
全面了解javascript中的错误处理机制
2016/07/18 Javascript
AngularJS中实现动画效果的方法
2016/07/28 Javascript
浅谈JavaScript的函数及作用域
2016/12/30 Javascript
JS使用贪心算法解决找零问题示例
2017/11/27 Javascript
详解Nuxt.js Vue服务端渲染摸索
2018/02/08 Javascript
微信小程序中为什么使用var that=this
2019/08/27 Javascript
深入学习Vue nextTick的用法及原理
2019/10/08 Javascript
JS实现灯泡开关特效
2020/03/30 Javascript
javascript用defineProperty实现简单的双向绑定方法
2020/04/03 Javascript
Python中的条件判断语句与循环语句用法小结
2016/03/21 Python
Python的多维空数组赋值方法
2018/04/13 Python
python:print格式化输出到文件的实例
2018/05/14 Python
Python面向对象之类的封装操作示例
2019/06/08 Python
python制作朋友圈九宫格图片
2019/11/03 Python
Python面向对象中类(class)的简单理解与用法分析
2020/02/21 Python
Python面向对象魔法方法和单例模块代码实例
2020/03/25 Python
python要安装在哪个盘
2020/06/15 Python
英国家喻户晓的折扣商场:TK Maxx
2017/05/26 全球购物
英国最大线上综合鞋类商城:Office
2017/12/08 全球购物
巴西美妆购物网站:Kutiz Beauté
2019/03/13 全球购物
面试自我介绍演讲稿
2014/04/29 职场文书
细节决定成败演讲稿
2014/05/12 职场文书
收款委托书范本
2014/09/11 职场文书
公安局负责人查摆问题及整改方案
2014/09/27 职场文书
银行委托书范本
2014/09/28 职场文书
个人债务授权委托书
2014/10/17 职场文书
2016年清明节寄语
2015/12/04 职场文书
优秀范文:《但愿人长久》教学反思3篇
2019/10/24 职场文书