ScrollTop等于一个不起作用的值

ScrollTop equal a value not working

本文关键字:不起作用 于一个 ScrollTop      更新时间:2023-09-26

我试图运行一个脚本时,滚动位置是一定的值。

为什么不工作?

<script type="text/javascript">
    $(document).scroll(function () {
        if ($(document).scrollTop() == 1500) { 
        $.scrollLock(true);}
    });
</script>

当我改变==>=它确实工作,但这不是我想要的。我只想让它在1500点工作。

当你在浏览器中滚动时,滚动条不会在1px段内向下滚动,而是在周围跳跃。在Chrome中,滚动一个会使你向上或向下移动100px(参见这个演示)。

你能做的就是在你的值上灵活一点。你可以将其设置为在1450到1550之间,而不是精确地设置为1500px。这个应该可以捕捉大多数浏览器中的滚动:

var scrollTop = $(document).scrollTop();
if (scrollTop >= 1450 && scrollTop <= 1550) { 
    $.scrollLock(true);
}

你可以更进一步,如果它在这个范围内,你可以把它强制到1500:

if (scrollTop >= 1450 && scrollTop <= 1550) { 
    $(document).scrollTop(1500);
    $.scrollLock(true);
}
<<p> JSFiddle演示/strong>。
相关文章: