我遇见引起滚动事件的问题,这个问题是可以重现如下:滚动事件持续多长时间?
焦距设定为未在浏览器窗口在默认情况下看到的元素(需要滚动才能看到它)。
然后附加侦听器来捕获滚动事件。
我困惑的是,当我设置集中不见元素,它将触发滚动事件,如何监听捕捉滚动事件后来附?我想也许这个滚动事件会持续一段时间,但多久?任何人都可以给我一个建议吗?
这里是一个简单的代码来重现:
<html>
<head>
<script type="text/javascript">
var onchange = function(){
var ip1 = document.getElementById("target");
var ip2 = document.getElementById("source");
var parent = document.getElementById("parent");
ip2.focus();
document.onscroll = function(e){
console.log("scroll");
};
}
</script>
</head>
<body onload="onchange()">
<input id="target"></input>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<div id="parent">
<input id="source">
</div>
不知道到底是什么问题,你是想在这里解决 - 和而滚动事件实际上并没有“最后“比任何其他事件都长,在滚动网站的过程中可能会经常触发它,如果您正在尝试根据该事件做某些事情,可能会产生性能影响。使用计时器的更深入的解释和可能的解决方法可以在这里找到:http://ejohn.org/blog/learning-from-twitter/ – CBroe 2014-09-02 02:05:40