小程序实现页面顶部选项卡效果


Posted in Javascript onNovember 06, 2018

本文实例为大家分享了小程序实现选项卡效果的具体代码,供大家参考,具体内容如下

效果图:

小程序实现页面顶部选项卡效果

github源码下载

<!--index.wxml--> 
<view class="swiper-tab" > 
  <view bindtap="swithNav" wx:for="{{tabCont}}" wx:key="item.index" class="swiper-tab-list {{currentTab==item.index?'active':''}}" data-current='{{item.index}}' >{{item.title}}</view> 
</view> 
<swiper class="swiper-box" current="{{currentTab}}" duration="300" style="height:400px" bindchange="GetCurrentTab" data-current='6' > 
  <swiper-item wx:for="{{tabCont}}" wx:key="item.index"> 
   <image src='{{item.pic}}'></image>
   <view>{{item.title}}</view>
  </swiper-item> 
</swiper>

CSS:

/**index.wxss**/

/**index.wxss**/

.swiper-tab {
 line-height: 80rpx;
 border: 1px solid #ccc;
 display: flex;
 justify-content: space-around;
 align-items: center;
}

.swiper-tab-list {
 font-size: 30rpx;
 color: #777;
 text-align: center;
}

.active {
 color: #da7c0c;
 border-bottom: 5rpx solid #da7c0c;
}

.swiper-box {
 display: block;
 height: 100%;
 width: 100%;
 overflow: hidden;
}

.swiper-box view {
 text-align: center;
}

image {
 width: 100%;
}

js:

Page({

 /**
  * 页面的初始数据
  */
 data: {
  currentTab:0,
  tabCont: [{ "title": "tab1", "pic": "../../img/1.jpg", "index": "0" }, { "title": "tab2", "pic": "../../img/2.jpg", "index": "1" }, { "title": "tab3", "pic": "../../img/3.jpg", "index": "2" }, { "title": "tab4", "pic": "../../img/2.jpg", "index": "3" }, { "title": "tab5", "pic": "../../img/2.jpg", "index": "4" }, { "title": "tab6", "pic": "../../img/2.jpg", "index": "5" }, { "title": "tab7", "pic": "../../img/2.jpg", "index": "6" }, { "title": "tab8", "pic": "../../img/2.jpg", "index": "7" }, { "title": "tab9", "pic": "../../img/2.jpg", "index": "8" }],
 },

 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function (options) {

 },

 /**
  * 生命周期函数--监听页面初次渲染完成
  */
 onReady: function () {

 },

 /**
  * 生命周期函数--监听页面显示
  */
 onShow: function () {

 },

 /**
  * 生命周期函数--监听页面隐藏
  */
 onHide: function () {

 },

 /**
  * 生命周期函数--监听页面卸载
  */
 onUnload: function () {

 },

 /**
  * 页面相关事件处理函数--监听用户下拉动作
  */
 onPullDownRefresh: function () {

 },

 /**
  * 页面上拉触底事件的处理函数
  */
 onReachBottom: function () {

 },

 /**
  * 用户点击右上角分享
  */
 onShareAppMessage: function () {

 },
 // swiper滑动时触发bindchange事件,获取事件对象e获取当前所在滑块的 index,并将其更新至data的currentTab中,视图渲染通过判断currentTab的让对应的tab hover。
 GetCurrentTab:function(e){
  console.log(e.detail.current);
  var that = this;
  this.setData({
   currentTab:e.detail.current
  });
  // console.log("11111"+this.data.currentTab);
 },
 swithNav:function(e){
  var that = this;
  that.setData({
   currentTab:e.target.dataset.current
  });

 }
})

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

Javascript 相关文章推荐
jquery JSON的解析方式
Jul 25 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件
Dec 21 Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 Javascript
JS DOM实现鼠标滑动图片效果
Sep 17 Javascript
jstree单选功能的实现方法
Jun 07 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
Nov 14 Javascript
anime.js 实现带有描边动画效果的复选框(推荐)
Dec 24 Javascript
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 jQuery
基于mpvue的简单弹窗组件mptoast使用详解
Aug 02 Javascript
微信小程序使用echarts获取数据并生成折线图
Oct 16 Javascript
JS函数进阶之继承用法实例分析
Jan 15 Javascript
JS实现多选框的操作
Jun 24 Javascript
Vue常用的几个指令附完整案例
Nov 06 #Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
Nov 06 #Javascript
100行代码实现一个vue分页组功能
Nov 06 #Javascript
微信小程序自定义tabBar组件开发详解
Sep 24 #Javascript
Vue递归实现树形菜单方法实例
Nov 06 #Javascript
electron中使用bootstrap的示例代码
Nov 06 #Javascript
vue实现自定义日期组件功能的实例代码
Nov 06 #Javascript
You might like
解析PHP高效率写法(详解原因)
2013/06/20 PHP
PHP跨平台获取服务器IP地址自定义函数分享
2014/12/29 PHP
PHP针对字符串开头和结尾的判断方法
2016/07/11 PHP
PHP框架laravel的.env文件配置教程
2017/06/07 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
解决jquery异步按一定的时间间隔刷新问题
2012/12/10 Javascript
javascript将相对路径转绝对路径示例
2014/03/14 Javascript
ExtJS4如何给同一个formpanel不同的url
2014/05/02 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
JS判断图片是否加载完成方法汇总(最新版)
2016/05/13 Javascript
聊一聊JS中this的指向问题
2016/06/17 Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
2016/08/11 Javascript
JS+CSS实现下拉刷新/上拉加载插件
2017/03/31 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
vue中计算属性(computed)、methods和watched之间的区别
2017/07/27 Javascript
详解vue中使用express+fetch获取本地json文件
2017/10/10 Javascript
浅谈node中的cluster集群
2018/06/02 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
小试SVG之新手小白入门教程
2019/01/08 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
mui js控制开关状态、修改switch开关的值方法
2019/09/03 Javascript
js实现图片跟随鼠标移动效果
2019/10/16 Javascript
原生js滑动轮播封装
2020/07/31 Javascript
解决vue动态下拉菜单 有数据未反应的问题
2020/08/06 Javascript
使用Python的Twisted框架编写非阻塞程序的代码示例
2016/05/25 Python
Python实现向服务器请求压缩数据及解压缩数据的方法示例
2017/06/09 Python
python实现简易版计算器
2020/06/22 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
Python贪心算法实例小结
2018/04/22 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
美国领先的户外服装与装备用品店:Moosejaw
2016/08/25 全球购物
加拿大折扣、优惠券和交易网站:WagJag
2018/02/07 全球购物
大学毕业登记表自我鉴定
2013/10/09 职场文书
致共产党员倡议书
2014/04/16 职场文书
乡村教师党员四风问题对照检查材料思想汇报
2014/10/08 职场文书