javascript - 滚动事件和 scrollTop 在 firefox 中不起作用

标签 javascript

我想得到 scrollTop滚动事件的值。

在 Chrome 上运行良好,但在 Firefox 上运行不佳。 crossbrowser/vanilla JS 有什么办法?

var i = 0;
window.onscroll = function () {
    var scrollTop = document.body.scrollTop;
    console.log(scrollTop,i); // always 0, (i works as expected)
    i++;
};

Fiddle

P.s.- 我不认为 setTimeout 是一个很好的实践/解决方案...

最佳答案

var i = 0;
var doc = document;
window.onscroll = function () {
    var scrollTop = doc.documentElement.scrollTop || doc.body.scrollTop;
    console.log(scrollTop,i);
    i++;
};

https://developer.mozilla.org/en-US/docs/Web/API/document.documentElement

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

相关文章:

javascript - 在 phonegap android 中使用 jqueryMobile 滚动

javascript - 如何使用 jQuery 比较两个日期选择器的日期

javascript - 如何为一个CSS类定义多个样式?

javascript - 如何创建范围 slider ? ( native react )

javascript - 调用 CSS 类而不是使用 JQuery (.css()) 插入属性

javascript - javascript确认对话框返回true后如何触发服务器端按钮的点击事件

javascript - C# Asp.net 必填字段验证器

javascript - 列出来自 Azure Blob 存储的 Blob 和 Node.js 中的 Readstream

javascript - Angular 2 : generating checkboxes issue

javascript - Codecademy FizzBu​​zz 应用程序可以工作,但不被接受作为答案