- 将脚本放在底部。
<link>
还是放在head
中,用以保证在js
加载前,能加载出正常显示的页面。<script>
标签放在</body>
前。 -
成组脚本:由于每个
<script>
标签下载时阻塞页面解析过程,所以限制页面的<script>
总数也可以改善性能。适用于内联脚本和外部脚本。 -
非阻塞脚本:等页面完成加载后,再加载
js
代码。也就是,在window.onload
事件发出后开始下载代码。 (1)defer
属性:支持IE4和fierfox3.5
更高版本浏览器 (2)动态脚本元素:文档对象模型(DOM)允许你使用js动态创建HTML
的几乎全部文档内容。代码如下:
<script>
var script=document.createElement("script");
script.type="text/javascript";
script.src="file.js";
document.getElementsByTagName("head")[0].appendChild(script);
</script>
此技术的重点在于:无论在何处启动下载,文件额下载和运行都不会阻塞其他页面处理过程。即使在head里(除了用于下载文件的http链接)。