JavaScript `onscroll` 事件独立(无框架)
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/10912893/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
JavaScript `onscroll` event standalone (without frameworks)
提问by Tiberiu-Ionu? Stan
I need a standalone JavaScript onscroll
event handler (withoutframeworks such as jQuery, Prototype, mootools, etc.), which is also cross browser.
我需要一个独立的 JavaScriptonscroll
事件处理程序(没有jQuery、Prototype、mootools 等框架),它也是跨浏览器。
I have searched for one, I can only find thousands of examples using jQuery or Prototype.
我搜索了一个,我只能找到数千个使用 jQuery 或 Prototype 的示例。
回答by Tiberiu-Ionu? Stan
From element.addEventListener:
function onScrollEventHandler(ev)
{
alert(ev);
//http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#event-type-scroll
}
var el=window;
if(el.addEventListener)
el.addEventListener('scroll', onScrollEventHandler, false);
else if (el.attachEvent)
el.attachEvent('onscroll', onScrollEventHandler);
回答by Sarfraz
See it on MDN:
在 MDN 上查看:
https://developer.mozilla.org/en/DOM/window.onscroll
https://developer.mozilla.org/en/DOM/window.onscroll
window.onscroll = function (e) {
// called when the window is scrolled.
}
回答by Sidupac
Here's a different way
这是一种不同的方式
function ScrollFunction(){ ... }
var eventMethod = window.addEventListener ? "addEventListener" : "attachEvent";
var AddEvent = window[eventMethod];
var scrollEvent = eventMethod == "attachEvent" ? "onscroll" : "scroll";
AddEvent(scrollEvent, ScrollFunction, false);