最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript寫的異步加載js文件函數(shù)(支持數(shù)組傳參)

 更新時間:2014年06月07日 11:41:28   作者:  
這篇文章主要介紹了javascript寫的異步加載js文件函數(shù),同時支持單個文件和多個文件(數(shù)組傳參),但不兼容IE6,需要的朋友可以參考下

自己用的加載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 = [url]; //如果不是數(shù)組帶個套
  };
  var i = 0,//循環(huán)起
   ok = 0,//加載成功幾個js
   len = url.length,//一共幾個js
   head = document.getElementsByTagName("head")[0],
   js, _url,
   create = function(url) {//創(chuàng)建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則執(zhí)行回調
    continue;
   }
   cache[encodeURIComponent(_url)] = !0;//設置緩存
   js = create(_url);//創(chuàng)建js
   fn && (js.onload = function() {
    if (++ok >= len) {//如果加載完所有的js則執(zhí)行回調
     fn();
    }
   });
  };
  head = js = _url = create  = null;
  return this;
 }
})();

相關文章

最新評論

山东| 册亨县| 应城市| 奉新县| 略阳县| 什邡市| 柏乡县| 宁乡县| 桐庐县| 河津市| 钟山县| 扎赉特旗| 辉南县| 开化县| 浑源县| 宁远县| 浦县| 兴安盟| 新晃| 宁德市| 滦南县| 青州市| 从江县| 浦东新区| 新平| 越西县| 寿阳县| 政和县| 桂平市| 白河县| 夏邑县| 珠海市| 丹棱县| 广平县| 崇文区| 子洲县| 镇远县| 普格县| 社旗县| 奎屯市| 双鸭山市|