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

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-26 11:27:57  来源:igfitidea点击:

JavaScript `onscroll` event standalone (without frameworks)

javascript

提问by Tiberiu-Ionu? Stan

I need a standalone JavaScript onscrollevent 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:

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);