300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > navtab触底 小程序_微信小程序TAB切换效果

navtab触底 小程序_微信小程序TAB切换效果

时间:2022-01-17 06:46:23

相关推荐

navtab触底 小程序_微信小程序TAB切换效果

微信小程序tab切换效果

话不多说,先上效果图

主要是让在一个WXML上面显示2个页面,用来分页展示东西。

直接上代码了:

首先是wxml

{{item}}

A页

B页

然后是wxcss样式代码

.tabNav {

z-index: 4;

top: 0;

left: 0;

width: 100%;

height: 80rpx;

line-height: 80rpx;

background: #fff;

display: flex;

padding: 0 30rpx;

border-bottom: 1px solid #f5f5f5;

box-sizing: border-box;

}

.tabNav> view {

text-align: center;

margin-right: 50rpx;

}

.tabNav> view:last-child {

margin-right: 0;

}

.tabNav> view text {

padding: 0 15rpx;

height: 75rpx;

display: inline-block;

}

.tabNav .cur text {

border-bottom: 5rpx solid #36ccf9;

color: #000;

}

.tabshow{

visibility: visible;

display: block;

}

.tabhide{

visibility: hidden;

display: none;

}

然后是wxjs代码

// pages/movieindex/movieindex.js

Page({

/**

* 页面的初始数据

*/

data: {

navTab: ['热映', '待映'],

currentTab: 0,

sendList: ['AA','BB'],

tab1:'tabshow',

tab2:'tabhide'

},

/**

* 生命周期函数--监听页面加载

*/

onLoad: function (options) {

},

currentTab: function (e) {

if (this.data.currentTab == e.currentTarget.dataset.idx) {

return;

}

this.setData({

currentTab: e.currentTarget.dataset.idx

})

if (e.currentTarget.dataset.idx==0)

{

this.setData({ tab1: "tabshow" });

this.setData({ tab2: "tabhide" });

} else if (e.currentTarget.dataset.idx == 1)

{

this.setData({ tab1: "tabhide" });

this.setData({ tab2: "tabshow" });

}

// 如果多个tab的话,在这里加就行了

},

/**

* 生命周期函数--监听页面初次渲染完成

*/

onReady: function () {

},

/**

* 生命周期函数--监听页面显示

*/

onShow: function () {

},

/**

* 生命周期函数--监听页面隐藏

*/

onHide: function () {

},

/**

* 生命周期函数--监听页面卸载

*/

onUnload: function () {

},

/**

* 页面相关事件处理函数--监听用户下拉动作

*/

onPullDownRefresh: function () {

},

/**

* 页面上拉触底事件的处理函数

*/

onReachBottom: function () {

},

/**

* 用户点击右上角分享

*/

onShareAppMessage: function () {

}

})

直接把上面3段代码加上,你的WXML就可以实现分页效果,重点的是JS的事件,主要看currentTab这个方法,这个里面就是点击某个TAB的时候,让页面的VIEW进行显示和隐藏。

https://developers./miniprogram/dev/framework/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。