解析页面的加载和JS函数onload或准备执行
首先,页面加载顺序:解析html结构。
加载外部脚本和样式表文件。
解析并执行脚本代码。
构建HTML DOM模型。
加载图像和其他外部文件。
加载页面。
这是:
HTML -头-标题- #文本(标题)式加载样式,链接风格分析和加载一个外部样式表文件解析外部样式表和脚本加载外部脚本文件来解析外部脚本文件,执行外部脚本体DIV脚本加载脚本解析脚本执行脚本,脚本,IMG加载脚本解析脚本,脚本,和加载外部图像文件,页面初始化完成。
加载了js的初始化。
onload
不在文档完成加载时调用,但在页面中的所有元素(包括图片)加载调用。如果页面上有大尺寸的图片,下载需要很长时间,那么脚本一直无法初始化直到图片加载,严重时用户体验会受到很大影响。然而,在window.onload不是无用的,在许多情况下,一些B / S软件加载网页在用户相关的功能,所以在window.onload可以提供下载功能,或网页的内容很少,没有(文件准备);根据不同情况,应合理使用onload和准备。
载载:
复制代码代码如下所示:
窗口。指针函数(){
无功currentrenderer = 'javascript;
fusioncharts.setcurrentrenderer(currentrenderer);
无功chartobj =新FusionCharts({
swfurl:pie3d SWF 。
宽度:290
身份:'samplechart,
DataSource: / / / new_seo_tool ucenter SEO。phpcheck = xmlval = { { pre_num } }
DataFormat:FusionChartsDataFormats.XMLURL,
RenderAt:'chart1div
})渲染();
}
准备好了
在W3C的,有一个事件被触发时,称为domcontentloaded,DOM(文档对象模型)加载。
方法1:
复制代码代码如下所示:
$(函数()(){ }…)$(文档). Ready(函数(…){ })类似于jQuery)
(函数(){())
var!(window.attachevent!窗户,歌剧);
VAR周= / /(WebKit D +)/ i.test(导航。用户代理)(regexp。1美元< 525);
var = { };
无功运行=函数(){为(var i = 0;i < fn.length;i++)FN {我}();};};
变量=文档;
d.ready =函数(F){
如果(!Ie! 周d.addeventlistener)
返回d.addeventlistener('domcontentloaded,F,假);
如果(fn.push(F)> 1)返回;
如果(如果)
(函数(){())
尝试{ d.documentelement.doscroll(右);运行();}
赶上(ERR){ setTimeout(arguments.callee,0);}
});
否则如果(星期)
var t = setInterval(function()){
(如果 / ^(装|完整)$ /。试验(d.readystate))
clearInterval(T),运行();
},0);
};
})();
当呼叫被调用时:
Document.ready(function(){()
警报(好的);
}
方法二:
复制代码代码如下所示:
/如果w3c DOM2支持,使用W3C的方法
如果(文件。addEventListener){
Document.addEventListener(domcontentloaded
}
如果( / / i.test MSIE(导航。用户代理))即({ /如果浏览器不支持)
创建带有延迟属性的脚本标记,在加载文档时将加载该属性
document.write(
VaR脚本= document.getelementbyidx_x(__ie_onload );
如果实际加载了文档,则调用初始化方法。
script.onreadystatechange =函数(){
如果(this.readystate = =完整的){
(TE);
}
}
}
如果( / / i.test WebKit的Safari(导航。用户代理))({ /如果浏览器不支持)
创建一个计时器,每隔0.01秒检查一次,并在加载文档时调用初始化方法。
无功_timer = setInterval()函数(){
如果( / / |加载完成。测试(文档。readyState)){
ClearInterval(_timer);
(TE);
}
},10);
}
否则,如果上面没有一个,使用最坏的方法(在这种情况下,Opera 7将出现在这里)
在window.onload =功能(e){
(TE);
}
}
函数TE(){
警报(好的);
}