微信小程序开发之实现选项卡(窗口顶部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 相关文章推荐
JS加jquery简单实现标签元素的显示或隐藏
Sep 23 Javascript
JS实现的用来对比两个用指定分隔符分割的字符串是否相同
Sep 19 Javascript
jQuery 动态云标签插件
Nov 11 Javascript
JavaScript汉诺塔问题解决方法
Apr 21 Javascript
JavaScript中的this机制
Jan 30 Javascript
AngularJs html compiler详解及示例代码
Sep 01 Javascript
JavaScript实现简单的日历效果
Sep 25 Javascript
Javascript中return的使用与闭包详解
Jan 11 Javascript
js实现上传并压缩图片效果
Jan 10 Javascript
利用jsonp解决js读取本地json跨域的问题
Dec 11 Javascript
深入Node TCP模块的理解
Mar 13 Javascript
vue 使用axios 数据请求第三方插件的使用教程详解
Jul 05 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
LotusPhp笔记之:Cookie组件的使用详解
2013/05/06 PHP
php简单实现MVC
2015/02/05 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
验证token、回复图文\文本、推送消息的实用微信类php代码
2016/06/28 PHP
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
固定网页背景图同时保持图片比例的思路代码
2013/08/15 Javascript
JS实现时间格式化的方式汇总
2013/10/16 Javascript
Jquery插件easyUi表单验证提交(示例代码)
2013/12/30 Javascript
JavaScript中创建对象和继承示例解读
2014/02/12 Javascript
原生js获取宽高与jquery获取宽高的方法关系对比
2014/04/04 Javascript
使用jquery修改表单的提交地址基本思路
2014/06/04 Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
2015/11/18 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
jquery自动补齐功能插件flexselect用法示例
2016/08/06 Javascript
CSS3 3D 技术手把手教你玩转
2016/09/02 Javascript
jquery replace方法去空格
2017/05/08 jQuery
node+koa实现数据mock接口的方法
2017/09/20 Javascript
jQuery+ajax实现动态添加表格tr td功能示例
2018/04/23 jQuery
详解nvm管理多版本node踩坑
2019/07/26 Javascript
vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
2019/10/15 Javascript
vue-autoui自匹配webapi的UI控件的实现
2020/03/20 Javascript
vue实现PC端分辨率适配操作
2020/08/03 Javascript
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
Python利用前序和中序遍历结果重建二叉树的方法
2016/04/27 Python
Python中在for循环中嵌套使用if和else语句的技巧
2016/06/20 Python
python目录与文件名操作例子
2016/08/28 Python
Python制作钉钉加密/解密工具
2016/12/07 Python
python 日期排序的实例代码
2019/07/11 Python
Pytorch卷积层手动初始化权值的实例
2019/08/17 Python
Python使用get_text()方法从大段html中提取文本的实例
2019/08/27 Python
python实现简单井字棋小游戏
2020/03/05 Python
北体毕业生求职信
2014/02/28 职场文书
2015年清剿火患专项行动工作总结
2015/07/27 职场文书
详解python网络进程
2021/06/15 Python
Python实现抖音热搜定时爬取功能
2022/03/16 Python
Win11 Beta 22621.601 和 22622.601今日发布 KB5017384修复内容汇总
2022/09/23 数码科技