<Div style="postion: absolute; width: 100%; height: 100%; z-index: 1000" ID="dv1"><table height="100%" width="100%"><tr><td height="100%" width="100%" align="center" valign="center">正在载入图片</td></tr></Table></Div>
<script Language="javascript">
document.body.onload = function() {
dv1.style.display = "none";
}
</script>
<img src="img/1.jpg">
我起先认为是一步一步按照顺序来解释的,但是象这个代码的话,如果1.jpg很大的话,那不是要花很长的时间,前面也没有预读过,当然<script里的defer〉我也没有加。但是反过来再看效果,却不一样啊,有个loading的啊,也就是说先解释<html>后解释<javascript>的。但我以前做JS虚线框的时候,如果把JS写在中间的话,后面的就超连接就不行,一定要加defer。所以我就不好说了,如需要例子的话,也可以。
<script Language="javascript">
document.body.onload = function() {
dv1.style.display = "none";
}
</script>
<img src="img/1.jpg">
我起先认为是一步一步按照顺序来解释的,但是象这个代码的话,如果1.jpg很大的话,那不是要花很长的时间,前面也没有预读过,当然<script里的defer〉我也没有加。但是反过来再看效果,却不一样啊,有个loading的啊,也就是说先解释<html>后解释<javascript>的。但我以前做JS虚线框的时候,如果把JS写在中间的话,后面的就超连接就不行,一定要加defer。所以我就不好说了,如需要例子的话,也可以。
如果有顺序的需要的话
建议你使用body的onload事件
或者使用js的异常(catch-try)来处理
推想过程:
那么他先读<div>把"正在载入图片"显示出来,然后读js把<div>隐藏了。最后去读这个<img>。
按照我上面的分析的话,这个图片根本就没有被预读,因为没有这个过程,可实际呢?
实际的过程:
先读<div>然后读了JS但由于是document.body.onload和function的关系所以要把<img>读完了以后在去读js里的内容。请问大家我这样分析的对吗?IE是这样处理的吗?
先读<div>然后读了JS但由于是document.body.onload和function的关系所以要把<img>读完了以后在去读js里的内容。是不是说这个也错了?
html中引用的其他资源,如image,外部stylesheet,外部js是分别读取的(多数浏览器会给每一个资源起用一个独立的并发连接)。期间,会触发一些事件,例如document本身的onload是在html完全loading之后发生(而不管外部资源是否读取完毕)。