简单实现异步加载 JavaScript
仅作为实用代码片段记录
js
/**
* 异步加载 JS 函数
* 实现思想:动态创建 script 标签,插入到文档中,然后执行 callback 函数
* url 为请求的 JS 文件的地址,callback 为请求成功时的回调函数
*/
function loadScript(url, callback) {
var script = document.createElement("script");
script.type = "text/javascript";
// 判断外部的 JS 文件是否加载完成(此处需要解决浏览器的兼容问题)
if (script.readyState) {
script.onreadystatechange = function () {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null;
callback();
}
};
} else {
script.onload = function () {
callback();
};
}
script.src = url;
document.body.appendChild(script);
}