LoadScript
function loadScripts(urls, callback) {
if (typeof (urls) === "string"){
urls = [urls];
}
var returnCallback = function (url) {
returnCallback.Counter++;
if (returnCallback.Counter >= urls.length){
callback();
}
}
returnCallback.Counter = 0;
var oHead = document.getElementsByTagName("head")[0];
for (var i = 0; i < urls.length; i++){
loadScript(urls[i], returnCallback,oHead);
}
}
function loadScript(url, callback,oHead) {
var script = document.createElement("script")
script.type = "text/javascript";
script.src = url;
//IE6-8
if (script.readyState) {
script.onreadystatechange = function () {
if (script.readyState == "loaded" || script.readyState == "complete") {
script.onreadystatechange = null;
callback(url);
}
};
}
//ie9+,chrome,ff
else {
script.onload = function () {
callback(url);
};
}
oHead = oHead || document.getElementsByTagName("head")[0];
oHead.insertBefore( script, oHead.firstChild );
}
参考:http://www.cnblogs.com/aarond/category/504617.html
http://www.cnblogs.com/sntetwt/p/4075154.html
LoadScript的更多相关文章
- A2D JS框架 - loadScript实现
其实这个功能比较小,本着自己造轮子的优良传统....就自己造一个好了 <head> <title></title> <script src="A2D ...
- loadscript加载
function load_script(xyUrl, callback){ var head = document.getElementsByTagName('head')[0]; var scri ...
- 高性能Javascript--脚本的无阻塞加载策略
Javascript在浏览器中的性能,可以说是前端开发者所要面对的最重要的可用性问题. 在Yahoo的Yslow23条规则当中,其中一条是将JS放在底部 .原因是,事实上,大多数浏览器使用单进程处理U ...
- Javascript 相关文章 —— 性能
在 IBM Bluemix 云平台上开发并部署您的下一个应用. 开始您的试用 概览 无论当前 JavaScript 代码是内嵌还是在外链文件中,页面的下载和渲染都必须停下来等待脚本执行完成.JavaS ...
- 高性能JavaScript--加载和执行(简要学习笔记一)
1.多数浏览器使用单一进程来处理用户界面刷新和JavaScript脚本的执行.所以同一时刻只能做同一件事.JavaScript执行过程耗时越久,浏览器等待相应的时间就越长. 2.<scrip ...
- Webpack从入门到上线
webpack是目前一个很热门的前端打包工具,官网说得很清楚,webpack的出现就是要把requirejs干掉.同时它还提供了十分便利的本地开发的环境.网上并不容易找到一个讲解得比较详细完整的教程, ...
- 介绍,介绍我的底层支持库 Net.Sz.CFramework
Net.Sz.CFramework 是我自己的底层库,是经过验证的底层库. 包含: socket tcp协议,socket http协议线程池,线程模型,任务模型,定时器模型,日志模块脚本模块一些辅 ...
- javascript性能优化:创建javascript无阻塞脚本
javaScript 在浏览器中的运行性能,在web2.0时代显得尤为重要,成千上万行javaScript代码无疑会成为性能杀手, 在较低版本的浏览器执行JavaScript代码的时候,由于浏览器只使 ...
- Ext JS 如何动态加载JavaScript创建窗体
JavaScript不需要编译即可运行,这让JavaScript构建的应用程序可以变得很灵活.我们可以根据需要动态从服务器加载JavaScript脚本来创建和控制UI来与用户交互.下面结合Ext JS ...
随机推荐
- Torch7的安装
Torch7 是一个科学计算框架,支持机器学习算法.易用而且提供高效的算法实现,得益于 LuaJIT 和一个底层的 C 实现. 提供: 一个强大的 N 维数组 提供大量索引.切片和置换的程序 通过 L ...
- Ajax 密码验证
var names = $("names");var pwds = $("pwds");var ts1 = $("ts1");var ts2 ...
- 【BZOJ-3275&3158】Number&千钧一发 最小割
3275: Number Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 748 Solved: 316[Submit][Status][Discus ...
- 【BZOJ-2453&2120】维护队列&数颜色 分块 + 带修莫队算法
2453: 维护队列 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 653 Solved: 283[Submit][Status][Discuss] ...
- NuGet在Push的时候提示“远程服务器返回错误:(403)已禁用”问题解决
在使用NuGet把包push到nuget官网的时候,提示了如下信息: Failed to process request. 'The specified API key is invalid or d ...
- 在浏览器中直接生成 PDF
well, 如果有人在准备开发一个浏览器端的 PDFCreator,那么,你需要知道的是,已经有人在这么做了.不过,他的做法显然更靠谱一些——先开发一个可以将基本元素放入 PDF 的库.太简单?no! ...
- iptables实现反向代理
拓扑图 实现目标 公网用户通过Firewall服务器(iptables实现)访问内网http服务 配置 #iptables iptables -t nat -A PREROUTING -p tcp - ...
- linux 内核 RCU机制详解
RCU(Read-Copy Update)是数据同步的一种方式,在当前的Linux内核中发挥着重要的作用.RCU主要针对的数据对象是链表,目的是提高遍历读取数据的效率,为了达到目的使用RCU机制读取数 ...
- photoshop切图介绍
第一部分:界面设置 1.点击“文件-新建”(或者ctrl+n)打开一个新建对话框.名称可随意填写.“预设”设置为自定,“宽度”一般选择1920,“单位”选为像素.“高度”可选择为2000,“单位”选为 ...
- jQuery基础(1) -- jQuery 语法
通过 jQuery,您可以选取(查询,query) HTML 元素,并对它们执行"操作"(actions).jQuery 语法jQuery 语法是通过选取 HTML 元素,并对选取 ...