动态加载Javascript增强版本
编程技术  /  houtizong 发布于 2年前   90
我们经常使用动态加载Javascript,写个函数很容易现实,之前也写过一个函数,不过当加载多个JS时,只能根据浏览器返回的顺序来先后加载,这肯定不是我们想要的,现在使用了一下技巧,当加载多个JS时,能按照我们的顺序加载:
/* Name:动态加载JS Author:kingwell Leng Date : 2013/4/21 E-mail: jinhua.leng##gmail.com*/function getScript(obj, callback) { var arr = obj, timeout, str = typeof obj === 'string'; function add() { var script = document.createElement("script"); header = document.getElementsByTagName("head")[0]; script.src = str ? obj : arr[0]; script.type = "text/javascript"; if (str) { if (script.readyState) { script.onreadystatechange = function () { if (script.readyState === 'loaded' || script.readyState === 'complete') { script.onreadystatechange = null; callback && callback(); } }; } else { script.onload = function () { callback && callback(); }; } } else { if (arr.length >= 1) { if (script.readyState) { script.onreadystatechange = function () { if (script.readyState === 'loaded' || script.readyState === 'complete') { script.onreadystatechange = null; arr.shift(); timeout = setTimeout(add, 1); } }; } else { script.onload = function () { arr.shift(); timeout = setTimeout(add, 1); }; } } else { clearTimeout(timeout); callback && callback(); } } header.appendChild(script); } add();}
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接