我有一个巨大的网络(许多图像,许多行 javascript,复杂的样式表)。当浏览器加载所有内容时,在加载 css/jquery 之前,它显示的是纯 html 数据,没有样式,看起来不太好。
奇怪的是,Firefox 似乎做得最多。其他浏览器似乎做得很好。
我该如何解决这个问题?我考虑过使用一些 css/javascript 指令启动索引,这会导致浏览器不显示任何内容(显示:无?),直到内容准备好(如何?)。
关于如何解决这个问题的任何想法?
我认为您可能需要更仔细地查看问题发生的原因,但是,我可以帮助您解决它!
您可以使用首先加载的不同样式表显示任何或所有 DOM 元素,然后在加载 doc 时使用 jQuery 删除该样式。
将所有脚本和样式表放在页眉中,不管人们怎么说将 JS 始终放在页脚中然后发挥作用。
就我而言。我仅在加载 css 时才使用 css onload 加载 html 内容
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <meta charset="UTF-8">
<title></title>
<script type="text/javascript">
function insertContentAtEnd(u, id_script_pre_html, id_script_post_html) {var xhr = new XMLHttpRequest();xhr.open('GET', u, true);xhr.onreadystatechange = function () {if (this.readyState !== 4) {return;}; if (this.status !== 200) { return; } else { var el = document.createElement('div');document.body.appendChild(el); /* to place at end of document*/ el.innerHTML = this.responseText; if(s1){ eval(document.getElementById(s1).innerHTML);}if(s2){ eval(document.getElementById(s2).innerHTML);} }; }; xhr.send();}
</script>
<link rel="stylesheet" href="/inc/css/default.css" onload="insertContentAtEnd('/lay/u/l/default.html','scr_u_l_pre','scr_u_l_post');"/>
</head>
<body></body>
</html>