gpt4 book ai didi

javascript - Chrome 的窗口调整大小事件问题

转载 作者:行者123 更新时间:2023-11-30 23:45:16 24 4
gpt4 key购买 nike

当窗口大小调整时,我正在尝试处理网站上的内容,但我遇到了一个无法解决的 Chrome 问题。这是非常简单的代码:

<script language="javascript" type="text/javascript">
window.onresize = function()
{
alert(1);
alert(2);
alert(3);
alert(4);
};
});
</script>

当我单击“恢复”窗口(make 较小)时,它工作正常(由于某种原因执行两次)。最大化窗口时,警报按以下顺序排列:1、2、1、2、3、4、3、4;或者有时是 1, 1, 2, 3, 4, 2, 3, 4。在 IE 中似乎工作得很好(执行三次),而 FF 则很好(只执行一次)。我也尝试过使用 $(window).resize(...); 的 jQuery 等效项。得到相同的结果。我知道 javascript 不是多线程的,但在这种情况下看起来几乎是多线程的。有人有什么想法吗?

最佳答案

这并不是单线程与多线程的区别,alert() 调用是锁定执行线程的少数事情之一,因此 while 警报是起来,其他事情正在后台排队。

如果您没有使用警报,而是执行了 console.log() 或写入页面进行调试,您将获得比使用 alert( 更一致的行为) 调用...这对于判断线程或竞争条件来说确实很糟糕,因为它们直接干扰和改变它们。

关于javascript - Chrome 的窗口调整大小事件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3233350/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com