小程序实现tab标签页


Posted in Javascript onNovember 16, 2020

本文实例为大家分享了小程序实现tab标签页的具体代码,供大家参考,具体内容如下

页面效果:

小程序实现tab标签页

HTML:

<view wx:if="{{userType==0}}" style="height:100%">
 <view class="tab_box" style="width: 100%">
 <view class="tabs_v">
 <block wx:for="{{tabs}}" wx:for-item="item" wx:key="index">
  <view class="tab_v {{index<1?'tab_nature':'tab_course'}}" bindtap='changeCurrentTab_' data-index='{{index}}'
  data-current='{{index}}'>
  <text class="tab_txt {{currentTab==index? 'tab_v_active' : ''}}">{{item.label}}</text>
  </view>
 </block>
 </view>
 </view>
 <!-- tab 容器 -->
 <view class="tabWrap">
 <swiper class="" current="{{currentTab}}" duration="300" bindchange="swiperTab" style="width:100%;height:100%;">
 <!-- 页面1 -->
 <block>
  <swiper-item style="width:100%;height:100%;">
  <view class="" style="width:100%;height:100%;">
  <scroll-view style="width:100%;height:100%;" scroll-y="true" bindscrolltolower='scrollToLower'
  bindscrolltoupper='scrollToUpper' lower-threshold='30' upper-threshold='30'>
  <view style="width:100%;height:auto;">
   页面1
  </view>
  </scroll-view>
  </view>
  </swiper-item>
 </block>
 <!-- 页面2 -->
 <block>
  <swiper-item style="width:100%;height:100%;">
  <view class="" style="width:100%;height:100%;">
  <scroll-view style="width:100%;height:100%;" scroll-y="true" bindscrolltolower='scrollToLower'
  bindscrolltoupper='scrollToUpper' lower-threshold='30' upper-threshold='30'>
  <view style="width:100%;height:auto;">
   页面2
  </view>
  </scroll-view>
  </view>
  </swiper-item>
 </block>
 </swiper>
 </view>
</view>

CSS:

/* tab */
.tab_box{
 height: 50px;
 display: flex;
 flex-direction: row;
 background-color: #fff;
 border-bottom: 1px solid #E5E5E5;
 margin-bottom: 15px;
}
.tabs_v{
 width: 100%;
 display: flex;
 flex-direction: row;
 justify-content: space-between;
 align-items: center;
}
.tab_v{
 width: 50%;
 text-align: center;
}
.tab_txt{
 border-bottom: 2px solid transparent;
 padding-bottom: 14px;
 color: #999999;
}
.tab_v_active{
 border-bottom: 2px solid #00C6AC;
 color: #00C6AC;
 font-weight: bold;
}
/* 容器 */
.tabWrap{
 width: 100%;
 height: calc(100% - 67px);
 position: relative;
 border-bottom: 1px solid #e6e6e6;
}

JS:

Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 tabs: [
 {label:'访客', index: 0},
 {label:'工作人员', index: 1}
 ],
 currentTab:0
 },
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 },
 
 /**
 * 生命周期函数--监听页面初次渲染完成
 */
 onReady: function () {
 
 },
 
 /**
 * 生命周期函数--监听页面显示
 */
 onShow: function () {
 
 },
 
 // tab切换
 changeCurrentTab_(e){
 let that = this
 if (that.data.currentTab === e.currentTarget.dataset.current){
 return false
 }else{
 that.setData({ 
 currentTab: e.currentTarget.dataset.current
 })
 }
 },
 //滑动切换
 swiperTab: function (e) {
 var that = this;
 that.setData({
 currentTab: e.detail.current
 });
 }
})

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

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

Javascript 相关文章推荐
科讯商业版中用到的ajax空间与分页函数
Sep 02 Javascript
工作中常用到的JS表单验证代码(包括例子)
Nov 11 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
Mar 28 Javascript
JavaScript编程中window的location与history对象详解
Oct 26 Javascript
一道常被人轻视的web前端常见面试题(JS)
Feb 15 Javascript
jQuery图片轮播插件——前端开发必看
May 31 Javascript
JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解
Jun 14 Javascript
每日十条JavaScript经验技巧(一)
Jun 23 Javascript
jQuery如何跳转到另一个网页 就这么简单
Dec 28 Javascript
JS实现简单的文字无缝上下滚动功能示例
Jun 22 Javascript
浅谈目前可以使用ES10的5个新特性
Jun 25 Javascript
js判断在哪个浏览器打开项目的方法
Jan 21 Javascript
vue+Element-ui实现登录注册表单
Nov 17 #Javascript
Vue+Element-U实现分页显示效果
Nov 15 #Javascript
vue+Element-ui前端实现分页效果
Nov 15 #Javascript
vue+Element-ui实现分页效果
Nov 15 #Javascript
vue实现抽屉弹窗效果
Nov 15 #Javascript
vue项目中js-cookie的使用存储token操作
Nov 13 #Javascript
vue 使用微信jssdk,调用微信相册上传图片功能
Nov 13 #Javascript
You might like
sphinx增量索引的一个问题
2011/06/14 PHP
PHPMailer邮件发送的实现代码
2013/05/04 PHP
JS input 数字验证代码
2009/07/30 Javascript
BOM与DOM的区别分析
2010/10/26 Javascript
分享一个我自己写的ToolTip提示插件(附源码)
2013/01/20 Javascript
JavaScript之IE的fireEvent方法详细解析
2013/11/20 Javascript
js 获取元素下面所有li的两种方法
2014/04/14 Javascript
Node.js中安全调用系统命令的方法(避免注入安全漏洞)
2014/12/05 Javascript
js获取字符串字节数方法小结
2015/06/09 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
VUE实现表单元素双向绑定(总结)
2017/08/08 Javascript
详解Node.js利用node-git-server快速搭建git服务器
2017/09/27 Javascript
vue-cli构建项目下使用微信分享功能
2018/05/28 Javascript
Vuex 在Vue 组件中获得Vuex 状态state的方法
2018/08/27 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
2018/12/12 Javascript
JavaScript常见继承模式实例小结
2019/01/11 Javascript
html+vue.js 实现漂亮分页功能可兼容IE
2020/11/07 Javascript
python链接Oracle数据库的方法
2015/06/28 Python
python可迭代对象去重实例
2020/05/15 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
2020/07/06 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
html5表单及新增的改良元素详解
2016/06/07 HTML / CSS
台湾团购、宅配和优惠券:17Life
2017/08/14 全球购物
FC-Moto美国:欧洲最大的摩托车服装和头盔商店之一
2019/08/24 全球购物
linux面试题参考答案(11)
2016/11/26 面试题
医学实习生自我鉴定
2013/12/12 职场文书
名人演讲稿范文
2013/12/28 职场文书
自荐书范文范例
2014/02/13 职场文书
伊索寓言教学反思
2014/05/01 职场文书
党支部书记岗位职责
2015/02/15 职场文书
综合办公室岗位职责
2015/04/11 职场文书
2016银行招聘自荐信
2016/01/28 职场文书
python 模块重载的五种方法
2021/04/24 Python
python分分钟绘制精美地图海报
2022/02/15 Python
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis