jQuery - 当窗口滚动 90% 时运行脚本

标签 jquery

我发现了一个很好的脚本,可以在用户滚动页面时加载页面内容。本文网址:CLICK HERE

我对这个脚本有一个问题 - 当用户滚动页面 100% 时(当滚动位于底部时)它会运行。我想当滚动到页面的 90% 时启动这个脚本。

原始代码如下:

if($(window).scrollTop() + $(window).height() == $(document).height())  //user scrolled to bottom of the page?

我这样尝试过:

    var percent = 90;
    window_scrolled = ((percent/$(document).height())*100);
    if($(window).scrollTop() + $(window).height() <= window_scrolled)  //user scrolled to bottom of the page?

但是它不起作用。为什么?我的脚本哪里有问题?

最佳答案

完整代码如下:

var percent = 90;
var window_scrolled;

$(window).scroll(function() {
    window_scrolled = ($(document).height()/100)*90;

    if($(window).scrollTop() + $(window).height() >= window_scrolled) {
        alert("scrolled to bottom");
    }
});

首先,你的数学计算错了。如果我们说文档高度为 2000px,您的代码将返回 4.5,而不是 1800,因此:

((percent/$(document).height())*100)

变成:

(($(document).height()/100)*percent)

还有,这个:

if($(window).scrollTop() + $(window).height() <= window_scrolled)

变成这样:

if($(window).scrollTop() + $(window).height() => window_scrolled)

关于jQuery - 当窗口滚动 90% 时运行脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29452778/

相关文章:

javascript - 无法在动态 json 解析内容上运行脚本

javascript - this.value 返回带值的括号

jquery - 使用 jQuery 根据滚动位置增加图像 src

javascript - 如何排除电子邮件地址中的 unicode 字符?

javascript - 无法使用jquery从函数中获取值

jquery - 如何重定向到正确的 Controller 操作方法

jquery datatables - 从 json 获取列

php - Dropzone.js 用 php 删除按钮

javascript - 禁用 JavaScript 进入表单

javascript - 通过 JavaScript 应用链接