微信小程序中如果判斷頁面滾動方向?
1.用到微信小程序API
2.獲取頁面實(shí)際高度
<!--WXML--> <view id="box"> <view class="list" wx:for="{{List}}" wx:key="List{{index}}"> <image mode='aspectFill' class='list_img' src="{{item.imgUrl}}" ></image> </view> </view> /* JS */ // 封裝函數(shù)獲取ID為box的元素實(shí)際高度 getScrollHeight: function() { wx.createSelectorQuery().select('#box').boundingClientRect((rect) => { this.setData({ scrollHeight: rect.height }) console.log(this.data.scrollHeight) }).exec() }, // 假設(shè)數(shù)據(jù)請求 getDataList: function() { wx.request({ url: 'test.php', //僅為示例,并非真實(shí)的接口地址 success: function(res) { // 如果該元素下面的數(shù)據(jù)是動態(tài)獲取的,此方法在wx.request請求成功的回調(diào)函數(shù)中調(diào)用 this.getScrollHeight() } }) },
3.監(jiān)聽用戶滑動頁面事件
//監(jiān)聽用戶滑動頁面事件 onPageScroll: function(e) { if (e.scrollTop <= 0) { // 滾動到最頂部 e.scrollTop = 0; } else if (e.scrollTop > this.data.scrollHeight) { // 滾動到最底部 e.scrollTop = this.data.scrollHeight; } if (e.scrollTop > this.data.scrollTop || e.scrollTop >= this.data.scrollHeight) { //向下滾動 console.log('向下 ', this.data.scrollHeight) } else { //向上滾動 console.log('向上滾動 ', this.data.scrollHeight) } //給scrollTop重新賦值 this.setData({ scrollTop: e.scrollTop }) },
免責(zé)聲明:本站所有文章和圖片均來自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請勿用于商業(yè)用途,如果損害了您的權(quán)利,請聯(lián)系網(wǎng)站客服處理。
工作日 8:30-12:00 14:30-18:00 周六及部分節(jié)假日提供值班服務(wù)
工作日 8:30-12:00 14:30-18:30