javascript警报阻止页面加载

时间:2013-06-04 08:56:47

标签: javascript jquery loading alert

我的客户希望在进入网页时显示提醒。

但是,警报会阻止进一步加载页面,直到单击“确定”,并且在显示警报时页面需要在后台加载。

一种解决方案是使用HTML和CSS使用自定义提醒,但这并不能满足客户的需求。

是否有使用“核心javascript”或jQuery的解决方案,以便在显示警报时加载页面? 感谢。

4 个答案:

答案 0 :(得分:8)

您应该通过setTimeout运行它:

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

此处显示: Is there a JavaScript alert that doesn't pause the script?

答案 1 :(得分:3)

修改

请参阅@ FunKy在Firefox中解决方法的答案。 (真有意思!)


简单的答案是否定的,这是不可能的!

原因是本机alert()对话框是UI阻止,javascript是单线程语言。

您必须使用自定义的对话框消息。

但是,如果在阻止UI之前完成了一些ajax请求,则当alert()对话框关闭时,ajax响应将/应该可用。因此,您仍然可以在显示警报之前发出一些ajax请求。

答案 2 :(得分:0)

您可以使用自定义对话框而不是警告框(阻止页面加载)。例如,Jquery UI Dialog很容易使用(但有许多插件完全相同)。

答案 3 :(得分:0)

在页面加载完成时显示警报。这里有一个jquery

的例子
$(function() {
    alert("foo");
});