【发布时间】:2020-10-01 06:40:23
【问题描述】:
我正在使用无限滚动,将数据动态绑定到特定的div。在 div 结束时触发事件并将数据附加到 div。最初在 div 末尾触发事件,但即使在附加数据之后,事件也会在第一个实例触发。如何在current instance of the div中触发事件
<script>
var div = document.getElementById("myDiv");
var top = div.getBoundingClientRect().top;
var bottom = div.getBoundingClientRect().bottom;
if (top <= window.innerHeight && bottom >= 0) {
console.log("Reach Div End");
}
</script>
注意:页面包含页眉和页脚。工作 div 介于页眉和页脚 div 之间
问题场景:header+main content+footer,动态追加数据到main content div。重要的是主要内容 div 是not overflow scroll,我想在窗口滚动到达主要内容 div 的末尾时触发事件。从上面的例子来看,top 和 bottom 变量保留了第一个实例的高度,但在内容绑定到主要内容后它不会刷新,所以它每次都会在第一个实例中触发事件
【问题讨论】:
-
这能回答你的问题吗? javascript: detect scroll end
-
感谢@Heretic Monkey 的回复,但我并不是说div 滚动溢出,我的意思是,在window 属性中滚动到div 的末尾
-
这个问题有 10 个答案。请全部尝试。
-
我看到了解决方案,大部分解决方案取决于文档的结尾,滚动的结尾,但我需要知道 div 的结尾放在页眉和页脚之间。并且 div 的高度会在每个滚动条上展开
-
“滚动结束”是“div 结束”在链接问题中,
myDiv是滚动 div。每次调用时都会计算高度 (myDiv.scrollHeight)。我不确定是什么问题。
标签: javascript html jquery