javascript - 检测无限滚动中添加了新页面
问题描述
我有一个无限滚动,我想检查何时将新页面添加到 DOM。由于我是该网站的第三方,因此我想知道以下哪种方法在性能方面是最好的方法,以便检测对 DOM 的这种更改:
- 设置间隔
- 突变观察者
- 滚动事件
- 路口观察员
解决方案
我无法用专业知识来描述,但让我告诉你我的看法。我认为最好的选择是每次滚动网站时使用滚动事件并检查窗口高度
我认为 setInterval 不是一个好的选择,因为如果您设置长期延迟,则会显示响应时间较晚,或者如果您设置短期延迟,该函数会被多次调用,甚至没有必要
而且我不熟悉 Mutation 观察者和 Intersection 观察者,但我知道这两者都需要指向一个被观察到的元素。如果您知道必须观看哪个元素但您是第三方,那也没关系。每次更新站点时,您都必须检查。
但是 Scroll 事件不必指向一个元素,它会被调用到最低限度。
我认为最好的选择是每次滚动网站时使用滚动事件并检查窗口高度
推荐阅读
- context-free-grammar - 这个解析树是如何生成的?
- r - 如何在R中创建一列变量,指示特定日期之前和之后
- numpy - numpy - 元组在 numpy 中不是“(...)”吗?
- c# - 从自定义 Visual Studio 桌面应用程序保存/导出数据
- ios - Appcelerator Titanium iOS 后台服务停止 30 秒
- finance - Pinescript:如何获得最高,最低,sma,不包括特定时间范围?
- swift - 正交投影中的相机位置
- java - 删除请求映射向我抛出此错误 405 Http method Get is not supported by this URL
- apache-spark - Spark结构化流作业中的java.io.FileNotFoundException
- reactjs - 反应给我错误:重新渲染太多。React 限制渲染次数以防止无限循环