我的客户希望在进入网页时显示警报。javascript警报阻止页面加载
但是,警报会阻止进一步加载页面,直到单击“确定”,并且需要在显示警告时加载页面。
一个解决方案是使用HTML和CSS的自定义警报,但这不能满足客户的需求。
是否有解决方案使用'核心JavaScript'或jQuery允许加载页面时显示警报? 谢谢。
我的客户希望在进入网页时显示警报。javascript警报阻止页面加载
但是,警报会阻止进一步加载页面,直到单击“确定”,并且需要在显示警告时加载页面。
一个解决方案是使用HTML和CSS的自定义警报,但这不能满足客户的需求。
是否有解决方案使用'核心JavaScript'或jQuery允许加载页面时显示警报? 谢谢。
你应该通过setTimeout的运行它:
setTimeout(function() { alert('hello world'); }, 1);
此如下所示: Is there a JavaScript alert that doesn't pause the script?
编辑
看到@时髦的答案在Firefox中的解决方法。 (真的很有趣!)
简单的答案是否定的,这是不可能的!
原因是原生的alert()
对话框是UI阻塞,JavaScript是单线程语言。
您必须使用自定义的对话框消息。
但是,如果某些ajax请求在阻塞UI之前完成,那么当关闭对话框时,ajax响应将/应该可用。因此,在显示警报之前,您仍然可以提出一些Ajax请求。
您可以使用自定义对话框而不是一个警告框(该块页面加载)的。例如,Jquery UI Dialog易于使用(但有许多插件完全相同)。
为什么不等待页面加载显示警报? – FLX
我明白了...所以你可以做一个自定义提醒看起来完全一样的本地警报:) – FLX