zepto的getScript函數擴展

 1 ;
 2 (function() {
 3     /**
 4      * 動態加載js文件
 5      * @param  {string}   url      js文件的url地址
 6      * @param  {Function} callback 加載完成後的回調函數
 7      */
 8     var _getScript = function(url, callback) {
 9         var head = document.getElementsByTagName('head')[0],
10             js = document.createElement('script');
11 
12         js.setAttribute('type', 'text/javascript'); 
13         js.setAttribute('src', url); 
14 
15         head.appendChild(js);
16 
17         //執行回調
18         var callbackFn = function(){
19                 if(typeof callback === 'function'){
20                     callback();
21                 }
22             };
23 
24         if (document.all) { //IE
25             js.onreadystatechange = function() {
26                 if (js.readyState == 'loaded' || js.readyState == 'complete') {
27                     callbackFn();
28                 }
29             }
30         } else {
31             js.onload = function() {
32                 callbackFn();
33             }
34         }
35     }
36 
37     //若是使用的是zepto,就添加擴展函數
38     if(Zepto){
39         $.getScript = _getScript;
40     }
41     
42 })();
相關文章
相關標籤/搜索