javascript写的异步加载js文件函数(支持数组传参)
2014-06-07 11:41
661 查看
自己用的加载js文件,支持多文件,不兼容ie
复制代码 代码如下:/**
* 加载js文件
* @param {string || array} url js路径
* @param {Function} fn 加载完成后回调
* @return {object} game对象
* @example
* getScript("url.js",fn)
* getScript(["url-1.js","url-2.js"],fn)
*/
game.getScript = (function() {
var cache = {};//内部缓存下url,下次则不请求
return function(url, fn) {
if ("string" === typeof(url)) {
url = js, _url,
create = function(url) {//创建js
js = document.createElement("script");
js.type = "text/javascript";
js.src = url;
head.appendChild(js);
return js;
};
for (; i < len;) {
if (cache[encodeURIComponent((_url = url[i++]))]) {//如果加载过
(++ok >= len && fn) && fn();//如果加载完所有的js则执行回调
continue;
}
cache[encodeURIComponent(_url)] = !0;//设置缓存
js = create(_url);//创建js
fn && (js.onload = function() {
if (++ok >= len) {//如果加载完所有的js则执行回调
fn();
}
});
};
head = js = _url = create = null;
return this;
}
})();
您可能感兴趣的文章:
相关文章推荐
- javascript写的异步加载js文件函数(支持数组传参)
- 动态加载js文件以支持跨域脚本
- 动态按需异步加载js文件
- Javascript文件加载:LABjs和RequireJS
- [Javascript]HTML5中script的async属性异步加载JS
- javascript开发随笔二 动态加载js和文件
- 动态加载外部.js文件时候,javascript的执行顺序问题
- 异步加载js文件并执行js方法:实现异步处理网页的复杂效果
- Javascript文件加载:LABjs和RequireJS
- yepnope.js 异步加载资源文件
- Javascript实战应用篇(3):动态加载JS和CSS文件
- 异步加载JS文件
- 比较简单的异步加载JS文件的代码
- 用JavaScript动态加载CSS和JS文件
- 使用javascript动态加载外部css或js文件
- 补充《动态加载外部.js文件时候,javascript的执行顺序问题》
- 删除加载js文件的scrip节点后,该js文件里面的函数还可以用吗?
- 动态加载外部javascript文件的函数代码分享
- yepnope.js – 异步加载资源文件
- 用JavaScript动态加载CSS和JS文件