gpt4 book ai didi

javascript - 滚动在 javascript 中不起作用

转载 作者:行者123 更新时间:2023-11-27 22:28:30 27 4
gpt4 key购买 nike

我有滚动功能

$('#lisr').scroll( function() {
if($(this).scrollTop() + $(this).innerHeight()>= $(this)[0].scrollHeight)
{
//DO some code
}
}

问题是当我向下滚动并到达底部时它会执行代码两次而不是一次,所以如果我在其中进行任何 ajax 调用,它会进行两次,我在其中遗漏了什么?

最佳答案

scroll() 函数绑定(bind)到滚动事件 - 当用户滚动页面时会触发多次。

在编写代码时假设它可以被多次调用:

var completed = false;

function doSomeCode() {}
function isAtBottomOfPage() {}

$('#lisr').scroll(function () {
if (!completed && isAtBottomOfPage()) {
doSomeCode();
completed = true;
}
});

jsfiddle:http://jsfiddle.net/kZJ9k/1/

作为更高级的说明,您可能不应该将您的逻辑直接绑定(bind)到 scroll 事件;滚动时可能会导致用户延迟。从 John Resig 那里阅读更多相关信息:

http://ejohn.org/blog/learning-from-twitter/

关于javascript - 滚动在 javascript 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20712736/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com