我想要一个页面阻塞/加载脚本,该脚本将覆盖整个页面并在加载所有资源时显示“正在加载...”消息,以避免无样式内容的闪烁等。
我基本上想要类似的东西jQuery 的 BlockUI http://jquery.malsup.com/block/#page的页面拦截方法:$.blockUI();
,但我希望它在本机 JavaScript 中,这样我就不必等待 jQuery 加载(我通过加载我的脚本要求JS http://requirejs.org/,所以当我的代码块执行时,我已经为我的应用程序下载了许多其他依赖项,并且我得到了我试图避免的无样式内容的闪光)。
任何人都知道可能适合我的本机 JavaScript 解决方案,我可以在 RequireJS 调用之前将其作为阻塞(就资产加载而言)脚本插入?
您可以将您的代码与浮动在页面上的 DIV 一起使用。
<div id="loading">
Loading! Please calm down guy...
<div>
该 DIV 可以显示为已经样式化的position: absolute
, width: 100%
and height: 100%
。该 CSS 可以内联,然后将应用它而无需下载任何其他文件。或者,就像 @aroth 评论的那样,您可以将其 DIV 设置为display: block
以及您的页面内容在另一个 DIV 中display: none
.
然后只需在代码末尾(靠近</body>
):
<script type="text/javascript">
document.getElementById("loading").style.display = "none";
document.getElementById("content").style.display = "block";
</script>
该脚本仅在所有其他元素加载后才会执行。
最后,我把这段代码这里作为样本 http://jsfiddle.net/ErickPetru/g7D8e/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)