2008年8月4日星期一

提高外链JavaScript脚本 的效率以提高网页载入速度(defer的使用)

其实就是简单的利用defer属性,让浏览器读JS脚本的时候完全不等脚本开始读就开始读下面的图片啊,html代码了。然后让js脚本自己在那里慢慢读取完以后再执行。

给外链的js脚本添加defer="true",像下面这个这样就可以了:

<script defer="true" src="JavaScript.js" type="text/javascript"/>


特别是比较大的脚本,提高整个网页的载入速度是非常明显的。

注意defer="true"还可以用作defer="defer",似乎使用defer="defer"比较普遍,我查看一个微软的文档,好像XTHML格式的网页用defer="true"比较恰当。

另外注意,defer="true"这个东西不要在脚本程序段中调用document.write命令,因为将产生直接输出效果二出错。

似乎目前只支持IE浏览器,因为火狐还没有修正这个bug,参见这里

4 评论:

匿名 说...

有一些脚本注定要放在前面执行的,
对于没有必要放置在很靠前的脚本,尽量放在
页面的最后。
还有思路就是用另外脚本 判断页面加载完毕 然后执行脚本。

GG 说...

这个defer就是要脚本后面才执行吧。问题像我这个博客,有要放在最前面的脚本,有要放中间的脚本,有放最后的……

最前面的用google.load所以速度快了,中间的只有用这个办法了~

匿名 说...

哇哈哈哈!

mILazI 说...

一直为defer='true'和defer='defer'纠结。

发表评论: ☆欢迎灌水☆言论自由☆交流快乐☆