如何让js调用不影响页面的加载速度?
如何让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代码)不会影响到整个文档加载。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论