Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用弹出窗口锁定屏幕,直到页面完全加载_Javascript_Html_Ajax - Fatal编程技术网

Javascript 用弹出窗口锁定屏幕,直到页面完全加载

Javascript 用弹出窗口锁定屏幕,直到页面完全加载,javascript,html,ajax,Javascript,Html,Ajax,我的页面需要相当长的时间来加载各种控件和菜单图像。我想显示一个带有进度条的弹出窗口。显示此弹出窗口时,用户不得访问web浏览器上的原始页面 页面完全加载后,此弹出窗口必须消失。如何做到这一点?您可以使用一个div覆盖整个屏幕并在窗口中显示。load handler隐藏该元素,但我同意上面的评论。不要对你的用户这样做。最简单的方法是使用覆盖层——一种绝对定位的,覆盖整个页面,并具有较高的z索引。一旦您的页面完成加载(即加载的事件触发),您就可以删除 一个粗略的样式示例: <html>

我的页面需要相当长的时间来加载各种控件和菜单图像。我想显示一个带有进度条的弹出窗口。显示此弹出窗口时,用户不得访问web浏览器上的原始页面


页面完全加载后,此弹出窗口必须消失。如何做到这一点?

您可以使用一个div覆盖整个屏幕并在窗口中显示。load handler隐藏该元素,但我同意上面的评论。不要对你的用户这样做。

最简单的方法是使用覆盖层——一种绝对定位的
,覆盖整个页面,并具有较高的
z索引。一旦您的页面完成加载(即加载的
事件触发),您就可以删除

一个粗略的样式示例:

<html>
<head>
<style type="text/css">
#loading-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: #000; opacity: 0.7; }
#loading-message { position: absolute; width: 400px; height: 100px; line-height: 100px; background-color: #fff; text-align: center; font-size: 1.2em; left: 50%; top: 50%; margin-left: -200px; margin-top: -50px; }
</style>
</head>
<body>
<div id="loading-overlay"></div>
<div id="loading-message">Loading page, please wait...</div>
<!-- rest of page -->
<p>The rest of the page goes here...</p>
</body>
</html>

#加载覆盖{位置:绝对;顶部:0;左侧:0;右侧:0;底部:0;背景色:#000;不透明度:0.7;}
#正在加载消息{位置:绝对;宽度:400px;高度:100px;行高:100px;背景色:#fff;文本对齐:中心;字体大小:1.2em;左侧:50%;顶部:50%;左边距:-200px;顶部边距:-50px;}
正在加载页面,请稍候。。。
这一页的其余部分在这里


请注意,控件可能有自己的“已加载”事件(例如,
标记do),该事件可能在页面完全完成后触发。您必须进行实验才能确定。

这是我在一个自定义云应用程序上使用的自定义应用程序:

查看body.onload操作的源


您可以在闲暇时随意使用……

呃。。。你意识到你想对你的用户做什么吗?(哼,对不起,但我忍不住:我不会回到这样做的网站!)如果连接到一个小图像失败怎么办?因为这张小小的图片,整个页面都无法使用。马丁,我想我这方面有点愚蠢。你能推荐最好的方法吗?首先,我建议优化页面的加载时间——例如,减少外部文件的数量;;要了解更多信息,您可以看一看(有很多东西要读,有^^^)@Martin:我正在使用一个小部件,用一个成熟的富文本编辑器取代TextArea控件。当这个小部件加载时,它会在TextArea控件的菜单上添加大量图像。如何优化它?它是第三方工具。