javascript - 检查用户是否已在 Jquery 中滚动到底部 [代码无法在 Chrome 上运行]

标签 javascript jquery google-chrome jquery-ui

我想用 jquery 检查用户是否滚动到页面底部。我搜索并找到了一个在 Microsoft Edge 上完美运行但在 Google Chrome 上运行不正常的解决方案。

$(document).ready(function(){
$(window).scroll(function() {   
if($(window).scrollTop() + $(window).height() == $(document).height()) {
   alert("bottom!");
}
});
});
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div style="height: 4000px">Scroll down!</div>

Microsoft Edge 中的输出:完美如我所愿。

Google Chrome 中的输出:在 Google Chrome 中,当我滚动到底部并再次滚动到顶部时它可以工作,但我不想要这个。

最佳答案

它在谷歌浏览器上也能正常工作。检查这个

$(document).ready(function(){
$(window).scroll(function() {   
if($(window).scrollTop() + $(window).height() == $(document).height()) {
   alert("bottom!");
}
});
});
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> 
</script>

<div style="height: 4000px">Scroll down!</div>

如果你想要一个纯基于 javascript 的解决方案,那么你去吧:

window.onscroll = function(ev) {
    if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight) {
        alert("you're at the bottom of the page");
    }
};
<div style="height:5000px"></div>

关于javascript - 检查用户是否已在 Jquery 中滚动到底部 [代码无法在 Chrome 上运行],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52024249/

相关文章:

jquery - Html5 canvas 无法使用 jquery 在 Div 中绘制

google-chrome - 更改 Chrome 书签面板的字体大小

javascript - Redux Store 不会使用 firebase 实时数据库上创建的数据更新状态

javascript - 为什么 IE 不显示此 alert()?

javascript - 动态创建的元素不可拖动

javascript - 使用 javascript(或 html5!)使 html 中的正文变暗

css - 在 chrome 中更改滤镜时图像在悬停时移动

javascript - 元素无法位于 (x,y) : how to fix for a list of WebElements that need to be clicked one by one

javascript - Odoo 10 添加按钮到 POS

javascript - Highcharts - 更改类别轴上的组填充和列宽度