![](/img/trans.png)
[英]confirm or alert boxes in safari(Windows) needs double click-why?
[英]Why does JavaScript dialog boxes (alert, confirm) stop page redrawing?
在浏览器页面上打开模式对话框,使页面无法重绘。 异步启动的脚本在后台连续运行。
我在此JSfiddle http://jsfiddle.net/YNbux/中说明了这种行为。 当显示alert()
时,该框将停止其动画,并在关闭警报时跳入动画。
此行为存在于(至少在我的计算机上):
因此,我认为这是预期的行为-但会导致动画跳跃以及其他对于最终用户而言似乎是小故障的事情。 那么,为什么alert()
和confirm()
阻止页面重绘?
编辑: gif图像也停止重绘: http : //jsfiddle.net/YNbux/4/
这些功能是阻止功能。 您的JavaScript停止执行,直到它们返回。
您的动画以及不在后台的动画与调用alert()
代码没有完全分开。 看起来是异步的代码仍然需要在循环中执行,并且如果某些代码块循环了,它们将不会自行运行。 这对于代码的正确操作至关重要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.