如何用程序触发window的onscroll事件
by admin
at 2011-09-07 18:29:01
original http://item.feedsky.com/~feedsky/helloJavaScript/~8514355/606431457/6618683/1/item.html
很多延迟加载的组件监听的都是window.onscroll事件.所以如果你自己模拟滚动条的话,你需要在滚动到时候能用js触发这个事件.
如何做呢,直接上代码,不要问为什么,就是这样:
if (document.createEvent) { var evObj = document.createEvent("HTMLEvents") evObj.initEvent( "scroll", true, false ) window.dispatchEvent(evObj) }else{ document.body.click(); }
ie里面有人说用scrollTo或者scrollBy可以触发….不错,不过如果你的鼠标左键被按下或者滚轮在滚动,这种方法就失效了….为什么我也不知道.
后来发现只需要点击一下body…就能触发onscroll….注意是window的onscroll…其他元素的可能存在不同.