如何让js调用不影响页面的加载速度
在WEB页面最常用的语言除了HTML、样式表外就是javascript了,但您知道怎么使用javascript才能不影响页面的加载 速度吗?本文就来解决这个疑问,我们先来看看通常js 的加载 方式:
<script src="xxxx.js "></script>
我们这样改一下:
<script type="text/javascript">
document.write("<scr"+"ipt src=/"xxx.js /"></sc"+"ript>")
</script>
以下举例说明:
比如下面是某站长统计代码,以前尽管是把它放在页面的最底部,但还是拖累页面加载 进度。
<script src="http://s69.cnzz.com/stat.php?id=265381&web_id=265381&show=pic" language="JavaScript" charset="gb2312"></script>
我们可以把它换成这样的方式来加载 (任然放在页面最底部):
用
<script type="text/javascript">
document.write("<scr"+"ipt src=/"xxx.js /"></sc"+"ript>")
</script>
的方式,还可实现按需按条件的来加载 你要的JS 文件:
<script type="text/javascript">
if ( "心情好" ) {document.write("<scr"+"ipt src=/"xxx.js /"></sc"+"ript>")}
</script>
这样要是"心情不好",就自然不会 载入 你不想要的JS 文件了。
<script type="text/javascript">
document.write("<scr"+"ipt src=/"=http://s69.cnzz.com/stat.php?id=265381&web_id=265381&show=pic/" language=/"JavaScript/" charset=/"gb2312/"></sc"+"ript>")
</script>
这样速度快多了。
个人理解原因是:直接包含js 解析器会当做文件来加载 处理,(会优先下载js 文件然后再解析html代码),而用document.write,js 文件被当成html代码来解析,(同步加载 html文档和js 代码)不会影响到整个文档加载 。