我有一个div
与层overflow
设置为scroll
。
当滚动到 底部时div
,我想运行一个函数。
我有一个div
与层overflow
设置为scroll
。
当滚动到 底部时div
,我想运行一个函数。
接受的答案从根本上是有缺陷的,它已被删除。正确答案是:
function scrolled(e) {
if (myDiv.offsetHeight + myDiv.scrollTop >= myDiv.scrollHeight) {
scrolledToBottom(e);
}
}
在 Firefox、Chrome 和 Opera 中对此进行了测试。有用。
我无法得到上述任何一个答案,所以这里有第三个对我有用的选项!(这与 jQuery 一起使用)
if (($(window).innerHeight() + $(window).scrollTop()) >= $("body").height()) {
//do stuff
}
希望这可以帮助任何人!
好的,这是一个很好且正确的解决方案
你有一个 Div 调用 id="myDiv"
所以功能就行了。
function GetScrollerEndPoint()
{
var scrollHeight = $("#myDiv").prop('scrollHeight');
var divHeight = $("#myDiv").height();
var scrollerEndPoint = scrollHeight - divHeight;
var divScrollerTop = $("#myDiv").scrollTop();
if(divScrollerTop === scrollerEndPoint)
{
//Your Code
//The Div scroller has reached the bottom
}
}
if ((window.innerHeight + window.scrollY) >= document.body.offsetHeight)
{
//your code here
}
我也搜索了它,甚至在检查了这里的所有评论之后,这是检查是否到达底部的解决方案。
这对我有用:
$(window).scroll(function() {
buffer = 40 // # of pixels from bottom of scroll to fire your function. Can be 0
if ($(".myDiv").prop('scrollHeight') - $(".myDiv").scrollTop() <= $(".myDiv").height() + buffer ) {
doThing();
}
});
必须使用 jQuery 1.6 或更高版本