【发布时间】:2011-09-01 10:16:20
【问题描述】:
当我的网站上加载页面时,HTML 出现在 javascript 之前,这会导致 javascript 加载时闪烁。 this stackoverflow post 的答案给出了一个很好的解决方案。但我想在 Javascript 之前至少加载一些 HTML,这样用户在连接缓慢时就不会面对空白页面。例如,我想立即加载标题,但要等到加载 javascript 后才加载 javascript 增强手风琴的 HTML。有什么建议?
这是我从上面链接的答案中借用的代码:
CSS:
#hideAll
{
position: fixed;
left: 0px;
right: 0px;
top: 0px;
bottom: 0px;
background-color: white;
z-index: 99; /* Higher than anything else in the document */
}
HTML:
<div style="display: none" id="hideAll"> </div>
Javascript
window.onload = function()
{ document.getElementById("hideAll").style.display = "none"; }
<script type="text/javascript">
document.getElementById("hideAll").style.display = "block";
</script>
【问题讨论】:
-
那么使用onload有什么问题呢?它会在页面加载时运行你的脚本
-
@Ibu:
onload直到 所有内容(包括图像)都加载完毕后才会触发。对于慢速连接,这可能是一个很长的延迟。用于此类文档操作的适当事件是 DOM ready。
标签: javascript flicker