微信小程序顶部导航栏滑动tab效果


Posted in Javascript onJanuary 28, 2019

小程序商品展示需要导航栏的商品分类进行滑动,供大家参考,具体内容如下

效果图:

微信小程序顶部导航栏滑动tab效果

微信小程序顶部导航栏滑动tab效果

首先是滑动的效果:

<scroll-view scroll-x="true" style="width: 100%;white-space:nowrap;">
</scroll-view>

小程序使用</scroll-view>,横向移动即可

WXML:这里面我将导航栏显示类目定义为5个,每个20%,当超出5个分类,也就是index>4的时候,导航栏下面的省略号加上(因为tab-nac的border-bottom只能显示到第五个分类)

<scroll-view scroll-x="true" style="width: 100%;white-space:nowrap;">
 <!-- tab -->
 <view class="tab">
  <view class="tab-nav" style='font-size:12px'>
  <view wx:for="{{tabnav.tabitem}}" bindtap="setTab" data-tabindex="{{index}}" style="min-width:20%;max-width:20%;text-align:center;height: 80rpx;
{{index>4?'border-bottom: 1rpx dotted #ddd;':''}}">{{item.text}}</view>
  <view >
  <view class="tab-line" style="width:{{100/tabnav.tabnum}}%;transform:translateX({{100*showtab}}%);"></view>
  </view>
  </view>
 </view>
</scroll-view>

wXSS:  

.tab{
 display: flex;
 flex-direction: column;
}
.tab-nav{
 height: 80rpx;
 background: #fff;
 border-bottom: 0.5rpx dotted #ddd;
 display: flex;
 line-height: 79rpx;
 position: relative;
}
 
.tab-line{
 position: absolute;
 left: 0;
 bottom: -1rpx;
 height: 4rpx;
 background: #f7982a;
 transition: all 0.3s;
}
.tab-content{
 flex: 1;
 overflow-y: auto;
 overflow-x: hidden;
}

JS: 

import util from './../../utils/util.js';
Page({
 data: {
 showtab: 0, //顶部选项卡索引
 tabnav: {
  tabnum: 5,
  tabitem: [
  {
   "id": 0,
   "text": "商品分类1"
  },
  {
   "id": 1,
   "text": "商品分类2"
  },
  {
   "id": 2,
   "text": "商品分类3"
  },
  {
   "id": 3,
   "text": "商品分类4"
  },
  {
   "id": 4,
   "text": "商品分类5"
  },
  {
   "id": 5,
   "text": "商品分类6"
  },
  {
   "id": 6,
   "text": "商品分类7"
  }
  ]
 },
 productList: [],
 },
 onLoad: function () {
 },
 setTab: function (e) {
 const edata = e.currentTarget.dataset;
 this.setData({
  showtab: edata.tabindex,
  
 })
 },
})

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

Javascript 相关文章推荐
javascript 年月日联动实现核心代码
Dec 21 Javascript
Javascript连接多个数组不用concat来解决
Mar 24 Javascript
javascript正则匹配汉字、数字、字母、下划线
Apr 10 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
May 25 Javascript
jquery+css实现绚丽的横向二级下拉菜单-附源码下载
Aug 23 Javascript
js实现异步循环实现代码
Feb 16 Javascript
基于d3.js实现实时刷新的折线图
Aug 03 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
Nov 23 Javascript
Vuejs入门教程之Vue生命周期,数据,手动挂载,指令,过滤器
Apr 19 Javascript
vue 开发之路由配置方法详解
Dec 02 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
Nov 18 Vue.js
JS一分钟在github+Jekyll的博客中添加访问量功能的实现
Apr 03 Javascript
详解基于node.js的脚手架工具开发经历
Jan 28 #Javascript
微信小程序实现顶部导航特效
Jan 28 #Javascript
详解几十行代码实现一个vue的状态管理
Jan 28 #Javascript
vue.js仿hover效果的实现方法示例
Jan 28 #Javascript
vue-for循环嵌套操作示例
Jan 28 #Javascript
使用pm2自动化部署node项目的方法步骤
Jan 28 #Javascript
jQuery访问json文件中数据的方法示例
Jan 28 #jQuery
You might like
curl不使用文件存取cookie php使用curl获取cookie示例
2014/01/26 PHP
php使用escapeshellarg时中文被过滤的解决方法
2016/07/10 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
js使用正则实现ReplaceAll全部替换的方法
2014/07/18 Javascript
jQuery原理系列-css选择器的简单实现
2016/06/07 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
2016/11/15 Javascript
原生js实现瀑布流布局
2017/03/08 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
360doc网站不登录就无法复制内容的解决方法
2018/01/27 Javascript
Node.js+ELK日志规范的实现
2019/05/23 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
[58:42]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第一局
2016/02/27 DOTA
[14:03]2017DOTA2亚洲邀请赛开幕式:12神兵演绎水墨中华
2017/04/01 DOTA
在Python的Django框架中包装视图函数
2015/07/20 Python
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
python解决Fedora解压zip时中文乱码的方法
2016/09/18 Python
用python与文件进行交互的方法
2018/03/01 Python
wtfPython—Python中一组有趣微妙的代码【收藏】
2018/08/31 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
美国内衣品牌:Leonisa
2016/08/14 全球购物
Rockport乐步美国官网:风靡美国的白宫鞋
2016/11/24 全球购物
瑞典手机壳品牌:Richmond & Finch
2018/04/28 全球购物
美国家居装饰购物网站:Amanda Lindroth
2020/03/25 全球购物
物业管理毕业生个人的求职信
2013/11/30 职场文书
干部行政关系介绍信
2014/01/17 职场文书
公司开业庆典主持词
2014/03/21 职场文书
安全宣传标语
2014/06/10 职场文书
2015年毕业生自我鉴定模板
2014/09/19 职场文书
家长通知书家长意见
2014/12/30 职场文书
幼儿园小朋友毕业感言
2015/07/30 职场文书
小学语文国培研修日志
2015/11/13 职场文书
Python离线安装openpyxl模块的步骤
2021/03/30 Python
Html5通过数据流方式播放视频的实现
2021/04/27 HTML / CSS
利用Python实时获取steam特惠游戏数据
2022/06/25 Python