javascript - 获取滚动元素jquery的百分比

标签 javascript jquery html css parallax

我似乎无法弄清楚如何计算这个值

在向下滚动页面时,我想创建一个函数来返回“滚动”的百分比。

所以我的 0 是元素即将显示时(它位于窗口底部,显示 0 个像素),100 是元素完全通过时(元素位于窗口顶部) , 显示 0 个像素)。

我需要它来使用自定义动画进行视差,制作一个在元素显示时开始的动画,并以动画方式播放直到元素消失。

编辑:我看到的所有 Paralax 插件似乎都会强制您使用预制动画。我想为我自己的东西制作动画,所以这就是为什么我需要那个百分比值。

最佳答案

问完问题后,我并没有袖手旁观,继续做这件事。这似乎做了我想做的事情。

function ScrollPercent(jQEl){
    var currY = $('html').scrollTop();
    var elH = $(jQEl).height();
    var elTop = $(jQEl).offset();
    elTop = elTop.top;
    var fullH = $('html').height();
    var zero = elTop-elH;
    var hundred = elTop+$( window ).height();
    var scrollPercent = (currY-zero)/(hundred-zero);
    return scrollPercent;
}

关于javascript - 获取滚动元素jquery的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49241457/

相关文章:

javascript - 如何获得定期间隔计数

javascript - 访问深层 json 链接以进行重定向

JavaScript onload 函数未触发

javascript - 带文本输入的过滤列表 - 嵌套列表未显示?

javascript - 如何从对象内部调用函数并在代码的其他部分重用该函数

video - 我可以从哪里开始学习如何设置 HTML5 视频和音频元素的样式?

javascript - 在多个输入字段上借助 Jquery 复制输入字段上的文本

javascript - 原型(prototype)AJAX加载空白页面onSuccess

javascript - 从 ajax 抓取数据

javascript - 使用jquery设置下拉列表中第一个选项的值