微信小程序 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 相关文章推荐
刷新页面实现方式总结(HTML,ASP,JS)
Nov 13 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
Feb 03 Javascript
eval的两组性能测试数据
Aug 17 Javascript
Jquery Validate 正则表达式实用验证代码大全
Aug 23 Javascript
jQuery的:parent选择器定义和用法
Jul 01 Javascript
九种原生js动画效果
Nov 11 Javascript
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Dec 15 Javascript
EsLint入门学习教程
Feb 17 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
浅析vue给不同环境配置不同打包命令
Aug 17 Javascript
js设计模式之代理模式及订阅发布模式实例详解
Aug 15 Javascript
JavaScript switch语句使用方法简介
Dec 30 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 显示客户端IP与服务器IP的代码
2010/10/12 PHP
Look And Say 序列php实现代码
2011/05/22 PHP
php简单socket服务器客户端代码实例
2015/05/18 PHP
php投票系统之增加与删除投票(管理员篇)
2016/07/01 PHP
php base64 编码与解码实例代码
2017/03/21 PHP
PHP使用PDO创建MySQL数据库、表及插入多条数据操作示例
2019/05/30 PHP
实例分析10个PHP常见安全问题
2019/07/09 PHP
a标签的css样式四个状态
2021/03/09 HTML / CSS
基于JQuery模仿苹果桌面的Dock效果(初级版)
2012/10/15 Javascript
Javascript脚本实现静态网页加密实例代码
2013/11/05 Javascript
jQuery插件实现文件上传功能(支持拖拽)
2020/08/27 Javascript
jquery+Jscex打造游戏力度条
2020/09/12 Javascript
移动开发之自适应手机屏幕宽度
2016/11/23 Javascript
jquery中用函数来设置css样式
2016/12/22 Javascript
利用nodejs监控文件变化并使用sftp上传到服务器
2017/02/18 NodeJs
ng2学习笔记之bootstrap中的component使用教程
2017/03/09 Javascript
jQuery插件开发发送短信倒计时功能代码
2017/05/09 jQuery
JavaScript ES6常用基础知识总结
2019/02/09 Javascript
vue中的过滤器实例代码详解
2019/06/06 Javascript
JavaScript中变量提升和函数提升的详解
2020/08/07 Javascript
[05:31]DOTA2英雄梦之声_第04期_光之守卫
2014/06/23 DOTA
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
2019/08/04 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
2020/09/11 Python
记录一下scrapy中settings的一些配置小结
2020/09/28 Python
利用python进行文件操作
2020/12/04 Python
html5视频常用API接口的实战示例
2020/03/20 HTML / CSS
后勤岗位职责
2013/11/26 职场文书
《灯光》教学反思
2014/02/08 职场文书
文明好少年事迹材料
2014/08/19 职场文书
国庆横幅标语
2014/10/08 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
爱心募捐感谢信
2015/01/22 职场文书
文艺演出主持词
2015/07/01 职场文书
2019年聘任书的写作格式及范文!
2019/07/03 职场文书
《好妈妈胜过好老师》:每个孩子的优秀都是有源头的
2020/01/03 职场文书