当前位置:  开发笔记 > 编程语言 > 正文

是否存在不会暂停脚本的JavaScript警报?

如何解决《是否存在不会暂停脚本的JavaScript警报?》经验,为你挑选了1个好方法。

我正在寻找类似的东西alert(),但这不会"暂停"脚本.

我想显示一个警报,并允许下一个命令,一个表单submit(),继续.因此,在显示警报后页面将会更改,但不会等到用户单击"确定".

有这样的事情还是只是其中一件不可能的事情?



1> Aaron Powell..:

您可以在setTimeout(非常短的超时)中执行警报,因为setTimeout是异步的:

setTimeout("alert('hello world');", 1);

或者为了正确地执行它,您确实在setTimeout中使用方法而不是字符串:

setTimeout(function() { alert('hello world'); }, 1);

否则你会打开JavaScript注入攻击.传递字符串时,它将通过JavaScript eval函数运行.


此解决方案不适用于Chrome,即使在setTimeout中,警报也会暂停所有浏览器脚本.
不要将字符串传递给setTimeout,传递函数.setTimeout(function(){alert('hello world');})更好 - 函数是Javascript中的第一个度数对象
`setTimeout`不是异步的,只是推迟了阻塞代码的同步执行.显示警报后,代码执行仍会被阻止,直到用户单击_OK_.
推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有