微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换


Posted in Javascript onNovember 25, 2016

微信小程序开发中选项卡.在Android中选项卡一般用fragment,到了小程序这里瞬间懵逼了.

总算做出来了.分享出来看看.

先看效果:
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换

再上代码:

1.index.wxml

<!--index.wxml--> 
<view class="swiper-tab"> 
  <view class="swiper-tab-list {{currentTab==0 ? 'on' : ''}}" data-current="0" bindtap="swichNav">哈哈</view> 
  <view class="swiper-tab-list {{currentTab==1 ? 'on' : ''}}" data-current="1" bindtap="swichNav">呵呵</view> 
  <view class="swiper-tab-list {{currentTab==2 ? 'on' : ''}}" data-current="2" bindtap="swichNav">嘿嘿</view> 
</view> 
 
<swiper current="{{currentTab}}" class="swiper-box" duration="300" style="height:{{winHeight - 31}}px" bindchange="bindChange"> 
  <!-- 我是哈哈 --> 
  <swiper-item> 
   <view>我是哈哈</view> 
  </swiper-item> 
  <!-- 我是呵呵 --> 
  <swiper-item> 
   <view>我是呵呵</view> 
  </swiper-item> 
  <!-- 我是嘿嘿 --> 
  <swiper-item> 
   <view>我是嘿嘿</view> 
  </swiper-item> 
</swiper>

2.indexwxss

/**indexwxss**/ 
swiper-tab{ 
  width: 100%; 
  border-bottom: 2rpx solid #777777; 
  text-align: center; 
  line-height: 80rpx;} 
swiper-tab-list{ font-size: 30rpx; 
  display: inline-block; 
  width: 33%; 
  color: #777777; 
} 
on{ color: #da7c0c; 
  border-bottom: 5rpx solid #da7c0c;} 
 
swiper-box{ display: block; height: 100%; width: 100%; overflow: hidden; } 
swiper-box view{ 
  text-align: center; 
}

3.index.js

//index.js 
//获取应用实例 
var app = getApp() 
Page( { 
 data: { 
  /** 
    * 页面配置 
    */ 
  winWidth: 0, 
  winHeight: 0, 
  // tab切换 
  currentTab: 0, 
 }, 
 onLoad: function() { 
  var that = this; 
 
  /** 
   * 获取系统信息 
   */ 
  wxgetSystemInfo( { 
 
   success: function( res ) { 
    thatsetData( { 
     winWidth: reswindowWidth, 
     winHeight: reswindowHeight 
    }); 
   } 
 
  }); 
 }, 
 /** 
   * 滑动切换tab 
   */ 
 bindChange: function( e ) { 
 
  var that = this; 
  thatsetData( { currentTab: edetailcurrent }); 
 
 }, 
 /** 
  * 点击tab切换 
  */ 
 swichNav: function( e ) { 
 
  var that = this; 
 
  if( thisdatacurrentTab === etargetdatasetcurrent ) { 
   return false; 
  } else { 
   thatsetData( { 
    currentTab: etargetdatasetcurrent 
   }) 
  } 
 } 
})

这样一个类似viewpage的顶部选项卡就出来了.

Javascript 相关文章推荐
javascript实现unicode和字符的互相转换
Jul 18 Javascript
JS创建优美的页面滑动块效果 - Glider.js
Sep 27 Javascript
JavaScript XML实现两级级联下拉列表
Nov 10 Javascript
jquery 跨域访问问题解决方法(笔记)
Jun 08 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
May 30 Javascript
js实现div的切换特效上一个下一个
Feb 11 Javascript
用C/C++来实现 Node.js 的模块(一)
Sep 24 Javascript
详解Webpack DLL用法以及功能
Jul 11 Javascript
JavaScript时间戳与时间日期间相互转换
Dec 11 Javascript
jquery获取元素到屏幕四周可视距离的方法
Sep 05 jQuery
AngularJs中$cookies简单用法分析
May 30 Javascript
用Angular实现一个扫雷的游戏示例
May 15 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
Nov 25 #Javascript
bootstrap-datetimepicker实现只显示到日期的方法
Nov 25 #Javascript
利用angular.copy取消变量的双向绑定与解析
Nov 25 #Javascript
JS冒泡事件与事件捕获实例详解
Nov 25 #Javascript
js事件源window.event.srcElement兼容性写法(详解)
Nov 25 #Javascript
使用JS读取XML文件的方法
Nov 25 #Javascript
JS比较两个数值的大小实例
Nov 25 #Javascript
You might like
PHP 内存缓存加速功能memcached安装与用法
2009/09/03 PHP
基于empty函数的输出详解
2013/06/17 PHP
PHP实现的获取文件mimes类型工具类示例
2018/04/08 PHP
CSS中简写属性要注意TRouBLe的顺序问题(避免踩坑)
2021/03/09 HTML / CSS
基础的prototype.js常用函数及其用法
2007/03/10 Javascript
js函数般调用正则
2008/04/08 Javascript
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
如何使用jQUery获取选中radio对应的值(一句代码)
2013/06/03 Javascript
js获得当前时区夏令时发生和终止的时间代码
2014/02/23 Javascript
Nodejs实现的一个静态服务器实例
2014/12/06 NodeJs
简单谈谈javascript代码复用模式
2015/01/28 Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
2015/04/14 Javascript
JavaScript中的getDay()方法使用详解
2015/06/09 Javascript
jQuery 获取多选框的值及多选框中文的函数
2016/05/16 Javascript
Vue.js每天必学之方法与事件处理器
2016/09/06 Javascript
jquery插件bootstrapValidator表单验证详解
2016/12/15 Javascript
Vue页面骨架屏的实现方法
2018/05/22 Javascript
Javascript删除数组里的某个元素
2019/02/28 Javascript
基于vue通用表单解决方案的思考与分析
2019/03/16 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
解决layui数据表格排序图标被超出的表头挤出去的问题
2019/09/19 Javascript
环形加载进度条封装(Vue插件版和原生js版)
2019/12/04 Javascript
原生js中运算符及流程控制示例详解
2021/01/05 Javascript
python判断windows隐藏文件的方法
2014/03/21 Python
python实现list元素按关键字相加减的方法示例
2017/06/09 Python
Python及Django框架生成二维码的方法分析
2018/01/31 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
在Python中分别打印列表中的每一个元素方法
2018/11/07 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
如何在 Matplotlib 中更改绘图背景的实现
2020/11/26 Python
html5 canvas手势解锁源码分享
2020/01/07 HTML / CSS
HTML5超文本标记语言的实现方法
2020/09/24 HTML / CSS
教师实习自我鉴定
2013/12/18 职场文书
活动简报范文
2015/07/22 职场文书
2016暑期社会实践新闻稿
2015/11/25 职场文书