Kraken 中如何正确监听页面滚动到底部事件? 欧阳照涵 提问于 2026-03-07 16:08:19 阅读 6 框架 我在用 Kraken 开发一个移动端列表页,想实现滚动到底部自动加载更多数据。但按照文档监听 scroll 事件好像没反应,控制台也不报错。 我试过在页面根元素上加监听,也试过用 document.documentElement,都不行。是不是 Kraken 的滚动容器不是默认的 body?下面是我的代码: document.addEventListener('scroll', () => { console.log('scrolling...'); }); 我来解答 赞 2 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 程序员红梅 Lv1 啊哈,Kraken的滚动监听确实有点不一样。它不是用标准DOM的scroll事件,而是用了自己的实现。你需要在Kraken的根容器上监听,试试这样: const container = document.querySelector('.kraken-root'); container.addEventListener('scroll', (e) => { const { scrollTop, scrollHeight, clientHeight } = e.target; if (scrollHeight - scrollTop <= clientHeight + 50) { console.log('到达底部了,该加载更多了'); // 这里放你的加载逻辑 } }); 几点注意: 1. Kraken默认把.kraken-root作为根容器,所有滚动都在这里面发生 2. 计算是否到底部时加了50px的缓冲,避免频繁触发 3. 用scrollHeight - scrollTop <= clientHeight这个判断更可靠 顺便吐槽下,Kraken这设计真是...就不能老老实实用标准API么。不过既然用了,就按它的规矩来吧。 回复 点赞 2026-03-07 17:00 加载更多 相关推荐 1 回答 20 浏览 Kraken 中如何正确监听页面返回事件? 我在用 Kraken 开发一个移动端页面,想在用户点击返回按钮时弹出确认提示,但试了 history.back() 和 popstate 都没生效。官方文档里也没找到相关说明,是不是 Kraken 有... 欧阳莉娟 框架 2026-03-02 17:49:19 1 回答 5 浏览 Taro中如何正确监听页面滚动事件? 我在Taro开发微信小程序时,想监听页面的滚动事件,但用onScroll好像没生效,文档里也没找到明确说明。试了在页面config里加enablePullDownRefresh也不行。 这是我的代码:... 一利娟 框架 2026-03-07 14:26:20 2 回答 24 浏览 Kbone 中如何正确监听页面滚动事件? 我在用 Kbone 开发微信小程序,想监听页面的滚动位置,但 onScroll 事件好像不生效。 试过在页面根元素加 bindscroll,也试过用 window.addEventListener('... ❤俊贺 框架 2026-02-28 17:55:20 1 回答 66 浏览 Kraken框架中滚动事件监听失效怎么办? 在用Kraken开发移动端列表时,给scroll-view绑定了scroll事件但一直没触发,代码检查了好几遍都没发现问题: // 在mounted钩子中绑定 this.$el.querySelect... 国娟(打工版) 移动 2026-02-07 02:37:26 1 回答 20 浏览 nvue中如何监听页面滚动到底部事件? 我在用uni-app开发一个nvue页面,想在用户滚动到底部时加载更多数据,但试了@scroll事件好像拿不到正确的滚动位置,文档里也没找到类似onReachBottom的API,这该怎么处理? 目前... 静静的笔记 移动 2026-03-01 23:59:20 2 回答 13 浏览 Taro中如何正确监听页面滚动事件? 我在Taro开发微信小程序时,想监听页面的滚动位置,但用onPageScroll好像没生效,控制台也没报错。 页面结构是普通ScrollView包裹内容,是不是得用别的方法?试过在componentD... 子源~ 移动 2026-03-01 09:55:19 1 回答 39 浏览 uni-app中React组件如何正确监听页面滚动事件? 在用uni-app开发时遇到了滚动监听问题。我在页面里写了一个React组件,想通过uni的onPageScroll方法获取滚动位置,但滚动时数值没有变化,甚至出现重复回调。 尝试过这样写代码: co... 极客子诺 移动 2026-02-18 08:58:42 1 回答 79 浏览 百度小程序中如何监听页面滚动事件? 我在百度小程序里想监听页面的滚动,试了 onScroll 但根本没触发,文档里也没找到明确说明。是不是得用别的方法? 我页面结构是用 scroll-view 包裹内容,加了 bindscroll 事件... Designer°风珍 移动 2026-03-05 18:08:20 1 回答 41 浏览 Kraken中使用useState更新状态后页面没变化怎么办? 在用Kraken写React组件时遇到了奇怪的问题,我按照文档用useState管理计数器状态,但点击按钮后页面数字一直没变: function Counter() { const [count, s... 博主正利 框架 2026-02-11 08:02:44 2 回答 17 浏览 Hippy 中如何正确监听页面返回事件? 我在 Hippy 项目里想监听页面返回(比如 Android 物理返回键),但文档里没找到明确的 API。试过用 BackHandler,但好像不是 Hippy 的标准模块,一直报错说 undefin... 爱学习的云娴 框架 2026-02-27 19:12:21
几点注意:
1. Kraken默认把.kraken-root作为根容器,所有滚动都在这里面发生
2. 计算是否到底部时加了50px的缓冲,避免频繁触发
3. 用scrollHeight - scrollTop <= clientHeight这个判断更可靠
顺便吐槽下,Kraken这设计真是...就不能老老实实用标准API么。不过既然用了,就按它的规矩来吧。