微信小程序之选项卡的实现方法


Posted in Javascript onSeptember 29, 2017

 微信小程序之选项卡的实现方法

前言:

从事前端的同学们一定不会对选项卡陌生,不管是自己原生写的,还是各个UI框架里带的,我想大家都使用过很多选项卡,对选项卡的原理也足够清楚了,下面我们来在微信小程序里实现选项卡的功能。

微信小程序里没有自带选项卡组件,但是却带有swiper组件,所以,我们便利用swiper来实现选项卡的功能。

先看效果图:

微信小程序之选项卡的实现方法

微信小程序之选项卡的实现方法

实现代码:

页面代码:

<view class="swiper-tab">
  <view class="swiper-tab-item {{currentTab==0?'active':''}}" data-current="0" bindtap="clickTab">一</view>
  <view class="swiper-tab-item {{currentTab==1?'active':''}}" data-current="1" bindtap="clickTab">二</view>
  <view class="swiper-tab-item {{currentTab==2?'active':''}}" data-current="2" bindtap="clickTab">三</view>
</view>

<swiper current="{{currentTab}}" duration="300" bindchange="swiperTab">
  <swiper-item><view>第一屏</view></swiper-item>
  <swiper-item><view>第二屏</view></swiper-item>
  <swiper-item><view>第三屏</view></swiper-item>
</swiper>

js代码:

var app=getApp()
Page({
 data:{
  currentTab:0
 },
 onLoad:function(options){
  // 页面初始化 options为页面跳转所带来的参数

 },
 //滑动切换
 swiperTab:function( e ){
  var that=this;
  that.setData({
   currentTba:e.detail.current
  });
 },
 //点击切换
 clickTab: function( e ) { 

  var that = this; 

  if( this.data.currentTab === e.target.dataset.current ) { 
   return false; 
  } else { 
   that.setData( { 
    currentTab: e.target.dataset.current 
   }) 
  } 
 } 

})

css代码:

.swiper-tab{
  width: 100%;
  border-bottom: 2rpx solid #ccc;
  text-align: center;
  height: 88rpx;
  line-height: 88rpx;
  font-weight: bold;
}
.swiper-tab-item{
  display: inline-block;
  width: 33.33%;
  color:red;
}
.active{
  color:aqua;
  border-bottom: 4rpx solid red;
}

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
让焦点自动跳转
Jul 01 Javascript
jQuery中文入门指南,翻译加实例,jQuery的起点教程
Feb 09 Javascript
跨浏览器开发经验总结(四) 怎么写入剪贴板
May 13 Javascript
jQuery Tools Dateinput使用介绍
Jul 14 Javascript
Javascript中的关键字和保留字整理
Oct 16 Javascript
使用jquery实现鼠标滑过弹出更多相关信息层附源码下载
Nov 23 Javascript
JavaScript设计模式经典之命令模式
Feb 24 Javascript
jquery dataview数据视图插件使用方法
Dec 23 Javascript
如何抽象一个Vue公共组件
Oct 17 Javascript
AngularJS中的作用域实例分析
May 16 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
Nov 12 Javascript
vue实现拖拽效果
Dec 23 Javascript
vue-cli的eslint相关用法
Sep 29 #Javascript
JavaScript数组的5种迭代方法
Sep 29 #Javascript
微信小程序之GET请求的实例详解
Sep 29 #Javascript
js仿微信抢红包功能
Sep 25 #Javascript
给vue项目添加ESLint的详细步骤
Sep 29 #Javascript
微信小程序 POST请求的实例详解
Sep 29 #Javascript
微信小程序之数据缓存的实例详解
Sep 29 #Javascript
You might like
php session 预定义数组
2009/03/16 PHP
php的hash算法介绍
2014/02/13 PHP
完整删除ecshop中获取店铺信息的API
2014/12/24 PHP
PHP对文件进行加锁、解锁实例
2015/01/23 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
Javascript学习笔记7 原型链的原理
2010/01/11 Javascript
jquery属性过滤选择器使用示例
2013/06/18 Javascript
JS验证身份证有效性示例
2013/10/11 Javascript
Javascript定义类(class)的三种方法详解
2015/03/13 Javascript
JavaScript缓冲运动实现方法(2则示例)
2016/01/08 Javascript
jQuery插件实现适用于移动端的地址选择器
2016/02/18 Javascript
zTree树形插件异步加载方法详解
2017/06/14 Javascript
JS基于对象的特性实现去除数组中重复项功能详解
2017/11/17 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
vue :src 文件路径错误问题的解决方法
2018/05/15 Javascript
BootStrap table实现表格行拖拽效果
2018/12/01 Javascript
nodeJS进程管理器pm2的使用
2019/01/09 NodeJs
TypeScript类型声明书写详解
2019/08/28 Javascript
jQuery AJAX应用实例总结
2020/05/19 jQuery
原生js实现点击按钮复制内容到剪切板
2020/11/19 Javascript
[58:25]VP vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
Python变量和字符串详解
2017/04/29 Python
TensorFlow在MAC环境下的安装及环境搭建
2017/11/14 Python
Python高级用法总结
2018/05/26 Python
Python爬取数据并写入MySQL数据库的实例
2018/06/21 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
2019/08/21 Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
2020/07/14 Python
利用python实现汉诺塔游戏
2021/03/01 Python
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
澳大利亚墨尔本的在线时装店:LORETA
2018/09/14 全球购物
英文求职信写作小建议
2014/02/16 职场文书
公司门卫的岗位职责
2014/02/19 职场文书
初中班长竞选稿
2015/11/20 职场文书
MySQL 常见的数据表设计误区汇总
2021/06/07 MySQL
MySQL 1130异常,无法远程登录解决方案详解
2021/08/23 MySQL