我有一个页面,在所有页面元素变得可访问之前,它必须加载 3 个 javascript 文件(相当大)。如果单击其中一个链接,则加载停止,整个页面将无法正确加载脚本。
我通过使用叠加层遮盖页面来制作解决方案,该叠加层在所有页面加载之前使页面变黑。所以在我的页面顶部我放了
$(".black-overlay").show();
这是一个 div,用 9999 的 z-index 屏蔽我的整个页面。然后在页面加载后,我把
$(function() {
$(".black-overlay").hide();
});
从我读到的来源与文档就绪功能相同,因此在页面加载后覆盖消失。
我的问题是,这只有时有效。一种情况是覆盖消失但链接仍然断开(意味着脚本尚未加载)。另一种情况是有时覆盖不会显示,如果:我移动到另一个页面,然后回到主页,在主页上覆盖必须再次显示,因为脚本必须再次加载。但有时,它工作得很好。
这个问题有更清洁的解决方案吗?
[编辑] 如果与网站的互联网连接非常慢,则会发生这种情况。