据我所知,浏览器假设在脚本到达脚本时停止呈现DOM,直到脚本完成。
但是,如果我写一个
window.open('Mypage.aspx?ID=0', '_top');
在头标记处,我仍然可以看到一个快速的闪烁'在打开新页面之前。
我甚至试图在身体标签之前创造一个人工延迟,但无济于事。
我怎样才能避免那种闪烁?
示例:
<html>
<head>
<title>aa</title>
<script type="text/javascript">window.open('MyPage.aspx?ID=0', '_top');
var now = new Date().getTime();
while(new Date().getTime() < now + 3000){ /* force delay */ }
</script></head><body style="background-color:red">
initial page
</body>
答案 0 :(得分:2)
在Chrome中,您可以在脚本的第一行使用window.stop();
来停止html渲染。
虽然对我来说,用css类来管理它似乎更加一致,以隐藏/显示它何时适合。