您好,登錄后才能下訂單哦!
這篇文章主要介紹了微信小程序頂部導航欄可滑動并選中放大,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
老規矩,先看效果圖
可以看到我們實現了如下功能
原理其實很簡單,我這里把我研究后的源碼發給大家吧。
wxml文件如下
<!-- 導航欄 --> <scroll-view scroll-x class="navbar" scroll-with-animation scroll-left="{{scrollLeft}}rpx"> <view class="nav-item" wx:for="{{tabs}}" wx:key="id" bindtap="tabSelect" data-id="{{index}}"> <view class="nav-text {{index==tabCur?'tab-on':''}}">{{item.name}}</view> </view> </scroll-view>
wxss文件如下
/* 導航欄布局相關 */ .navbar { width: 100%; height: 90rpx; /* 文本不換行 */ white-space: nowrap; display: flex; box-sizing: border-box; border-bottom: 1rpx solid #eee; background: #fff; align-items: center; /* 固定在頂部 */ position: fixed; left: 0rpx; top: 0rpx; } .nav-item { padding-left: 25rpx; padding-right: 25rpx; height: 100%; display: inline-block; /* 普通文字大小 */ font-size: 28rpx; } .nav-text { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; letter-spacing: 4rpx; box-sizing: border-box; } .tab-on { color: #fbbd08; /* 選中放大 */ font-size: 38rpx !important; font-weight: 600; border-bottom: 4rpx solid #fbbd08 !important; }
js文件如下
// pages/test2/test2.js Page({ data: { tabCur: 0, //默認選中 tabs: [{ name: '等待支付', id: 0 }, { name: '待發貨', id: 1 }, { name: '待收貨', id: 2 }, { name: '待簽字', id: 3 }, { name: '待評價', id: 4 }, { name: '五星好評', id: 5 }, { name: '差評訂單', id: 6 }, { name: '編程小石頭', id: 8 }, { name: '小石頭', id: 9 } ] }, //選擇條目 tabSelect(e) { this.setData({ tabCur: e.currentTarget.dataset.id, scrollLeft: (e.currentTarget.dataset.id - 2) * 200 }) } })
代碼里注釋很明白了,大家自己跟著多敲幾遍就可以了。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。