高性能javascript 笔记 第一章 loading and executing (二) 动态加载script

1.DOM允许使用javascript来动态创建<script>元素,并且动态创建的<script>元素除了会增加http连接(毕竟要下载文件)外,不会阻塞页面其他动作(即使将其放在<head>中也一样),并且文件在<script>元素添加到页面之后马上开始下载。这正是我们所期望的。

代码如下

var script = document.createElement ("script"); 
script.type = "text/javascript";
script.src = "file1.js";
document.getElementsByTagName_r("head")[0].appendChild(script);

然后谈谈它的副作用:当文件使用动态脚本节点下载时,返回的代码通常立即执行。当脚本本来就会自动执行时还好,如果是script只包含供其它脚本调用的接口,那么你需要跟踪该文件是否已经下载完成并且能够被其他脚本调用,通常可以通过script的onload事件(非ie),以及ie的onreadystatechange事件,这两个事件会在script脚本接受完成后触发,从而可以设置相应状态位来让其他脚本明白接口能够调用。

2.

原文地址:https://www.cnblogs.com/lifeisshort/p/4881111.html