微信小程序 在bindscroll事件中监听scroll-view滚动到底

scroll-view其实提供了一个 bindscrolltolower 事件 这个事件的作用是直接监听scroll-view滚动到底部

但是 总有不太一样的情况

公司的项目 scroll-view 内部 最下面有一个 类名叫 bottombj 的元素

我希望 滚动到这个 bottombj 上面的时候就开始加载滚动分页 简单说 bottombj这块元素不参与滚动分页

但 bindscrolltolower 只会判断 是否到了当前scroll-view最底部 而无法动态拒绝某块元素参与

所以 我们只能寄希望于 bindscroll

首先 我们要给自己的scroll-view加一个id 方便我们去那这块元素

这里 我直接叫 scroll-page

然后 我们在 bindscroll="bindscrolltolower"中直接这样写

javascript 复制代码
const query = wx.createSelectorQuery()
query.select('#scroll-page').boundingClientRect()
query.exec((res) =>{
    if ((e.detail.scrollHeight - e.detail.scrollTop) <= (res[0].height + 1)) {
        console.log("执行滚动分页逻辑");
    }
});

那么 我们如果 不想bottombjBox参与

这样写

javascript 复制代码
const query = wx.createSelectorQuery()
query.select('#scroll-page').boundingClientRect()
query.select('.bottombjBox').boundingClientRect()
query.exec((res) =>{
    if (((e.detail.scrollHeight-res[1].height) - e.detail.scrollTop) <= (res[0].height + 1)) {
        console.log("执行滚动分页逻辑");
    }
});

我们只需要 通过query将 .bottombjBox 一起捕获 因为 后捕获的 bottombjBox 所以他是 1下标

去和总高度减一下就好了

相关推荐
大米饭消灭者6 小时前
Taro是怎么实现一码多端的【底层原理】
微信小程序·taro
FliPPeDround1 天前
Vitest Environment UniApp:让 uni-app E2E 测试变得前所未有的简单
微信小程序·e2e·前端工程化
FliPPeDround1 天前
微信小程序自动化的 AI 新时代:wechat-devtools-mcp 智能方案
微信小程序·ai编程·mcp
吴声子夜歌1 天前
小程序——布局示例
小程序
码云数智-大飞1 天前
如何创建自己的小程序,码云数智与有赞平台对比
微信小程序
luffy54591 天前
微信小程序页面使用类似filter函数的wxs语法
微信小程序·小程序
Slow菜鸟1 天前
微信小程序开发(二)目录结构完全指南
微信小程序·小程序
攀登的牵牛花2 天前
给女朋友写了个轻断食小程序:去老丈人家也是先动筷了
前端·微信小程序
前端小雪的博客.2 天前
【保姆级教程】uniAI 插件高效开发 uni-app 微信小程序(附实战案例)
微信小程序·uni-app·ai编程·uniai
小小王app小程序开发2 天前
海外盲盒小程序抽赏玩法分析(附跨境技术落地要点)
小程序