Javascript 窗口大小调整功能运行两次
请在下面找到我的代码:Javascript 窗口大小调整功能运行两次,javascript,jquery,Javascript,Jquery,请在下面找到我的代码: <script type="text/jscript"> $(document).ready(function() { $(window).resize(function(){ alert("Window resized"); }); }); </script> $(文档).ready(函数(){ $(窗口)。调整大小(函数(){ 警报(“窗口大小调整”); }); }); 每当调整窗口大小时,我都会运
<script type="text/jscript">
$(document).ready(function() {
$(window).resize(function(){
alert("Window resized");
});
});
</script>
$(文档).ready(函数(){
$(窗口)。调整大小(函数(){
警报(“窗口大小调整”);
});
});
每当调整窗口大小时,我都会运行两次此警报()。为什么?它不只是启动两次,当窗口调整大小时,它将启动任意次数。Firefox过去只在调整大小“完成”时触发调整大小事件,但现在它在调整大小期间触发多个调整大小事件,就像Chrome一直做的那样 因此,您需要使resize事件回调尽可能小,因为它会经常触发。你可以这样做来控制它:
var resizeTimer = undefined;
$(document).ready(function() {
$(window).resize(function() {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function () {
alert("Window resized");
}, 200);
});
});
只有在200毫秒内没有后续调整大小事件出现时,才会调用
警报。您是否可以为问题FIDLE创建一个FIDLE。但是看起来不错。。你是如何调整它的大小的!!通过代码或通常使用鼠标??如果调试器处于打开状态,这将导致调整大小事件发生两次,因为更改浏览器调试器大小也将计为窗口调整大小。调试器的大小调整似乎是分开进行的。我想这个链接有你的答案[谢谢你,Anders。它成功了。我认为这是我的错误,我尝试了好几次免费重新编写整个420+行的js。再次感谢你。