小程序实现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 相关文章推荐
实现复选框全选/全不选切换
Dec 23 Javascript
Javascript 判断函数类型完美解决方案
Sep 02 Javascript
javascript 日期常用的方法
Nov 11 Javascript
JS DOM 操作实现代码
Aug 01 Javascript
javascript淡入淡出效果的实现思路
Mar 31 Javascript
jquery ajax的success回调函数中实现按钮置灰倒计时
Nov 19 Javascript
Firefox中通过JavaScript复制数据到剪贴板(Copy to Clipboard 跨浏览器版)
Nov 22 Javascript
让IE8浏览器支持function.bind()方法
Oct 16 Javascript
使用Node.js给图片加水印的方法
Nov 15 Javascript
jquery实现用户登陆界面(示例讲解)
Sep 06 jQuery
JS实现静态页面搜索并高亮显示功能完整示例
Sep 19 Javascript
JS eval代码快速解密实例解析
Apr 23 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
支持数组的ADDSLASHES的php函数
2010/02/16 PHP
浅析关于PHP位运算的简单权限设计
2013/06/30 PHP
Laravel 5.1 on SAE环境开发教程【附项目demo源码】
2016/10/09 PHP
Laravel如何使用数据库事务及捕获事务失败后的异常详解
2017/10/23 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
2018/05/28 PHP
fancybox modal的完美解决(右上的X)
2012/10/30 Javascript
JavaScript执行效率与性能提升方案
2012/12/21 Javascript
jquery获取div宽度的实现思路与代码
2013/01/13 Javascript
jquery 清空file域示例(兼容个浏览器)
2013/10/11 Javascript
选择复选框按钮置灰否则按钮可用
2014/05/22 Javascript
jQuery中val()方法用法实例
2014/12/25 Javascript
jquery实现全选功能效果的实现代码
2016/05/05 Javascript
JavaScript中闭包的详解
2017/04/01 Javascript
angular+webpack2实战例子
2017/05/23 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
详解微信小程序回到顶部的两种方式
2019/05/09 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
如何在微信小程序中存setStorage
2019/12/13 Javascript
JS实现分页导航效果
2020/02/19 Javascript
Python入门_浅谈for循环、while循环
2017/05/16 Python
简单学习Python多进程Multiprocessing
2017/08/29 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
Django文件存储 默认存储系统解析
2019/08/02 Python
python pygame实现滚动横版射击游戏城市之战
2019/11/25 Python
Python for循环通过序列索引迭代过程解析
2020/02/07 Python
基于Tensorflow:CPU性能分析
2020/02/10 Python
html5新增的属性和废除的属性简要概述
2013/02/20 HTML / CSS
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
英国女士家居服网站:hush
2017/08/09 全球购物
Schecker荷兰:狗狗用品和配件
2019/06/06 全球购物
意大利奢侈品牌在线精品店:Jole.it
2020/11/23 全球购物
家乐福台湾线上购物网:Carrefour台湾
2020/09/15 全球购物
保安的辞职报告怎么写
2014/01/20 职场文书
道德模范先进事迹
2014/02/14 职场文书
安全生产奖惩制度
2015/08/06 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS