当您只想在加载某一个javascript文件时才加载外部javascript文件时,此对象很有用。
这样,您将形成某种可链接的javascript库加载,这将保证您仅在加载了依赖项时才加载每个文件。
用法
此示例说明如何加载jQuery库,并且仅在完全加载时加载jQuery UI库,然后加载脚本–“ your-script.js”。
源码
/**
*
* 加载外部 javascript 文件
*
**/
scriptLoader.load([
'http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js',
'http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js'
'/your_script.js'
]);
var scriptLoader = {
_loadScript: function (url, callback) {
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
if (callback) {
script.onreadystatechange = function () {
if (this.readyState == 'loaded') callback();
}
script.onload = callback;
}
head.appendChild(script);
},
load: function (items, iteration) {
if (!iteration) iteration = 0;
if (items[iteration]) {
scriptLoader._loadScript(
items[iteration],
function () {
scriptLoader.load(items, iteration+1);
}
)
}
}
}