//Taken from jQl:
var jQl = {
"q": [],
"unq": function() {
for (var i = 0; i < jQl.q.length; i++)
jQl.q[i]();
jQl.q = [];
},
"ready": function(f, t) {
if (typeof f == 'function') {
if (typeof t != undefined && t == true) {
jQl.q.unshift(f);
} else {
jQl.q.push(f);
}
}
// return jQl in order to support jQuery(document).ready()
return jQl;
},
"bId": null,
"boot": function(callback) {
if (typeof window.jQuery == 'undefined' || typeof window.jQuery.fn == 'undefined') {
if (!jQl.bId) {
jQl.bId = setInterval(function() {
jQl.boot(callback)
}, 25);
}
return;
}
if (jQl.bId) {
clearInterval(jQl.bId);
}
jQl.bId = 0;
// OK, jQuery is loaded,
// we can load additional jQuery dependents modules
//jQl.unqjQdep();
// then unqueue all inline calls
// (when document is ready)
$(jQl.unq());
// call the callback if provided
if (typeof callback == 'function') callback();
}
}
jQuery Loader 是一个用于 jquery 和 jquery 插件的异步非阻塞加载器。Loader 的好处是可以同时加载 jQuery 和依赖的插件,而不影响页面上的渲染。
jQl,jQuery loader,
q
代表queue
,最初q
是一个空数组[]
。unq
代表unqueue
,它循环通过 jQuery 队列和出队来下载。当它准备好时,如果
f
是一个函数,jQuery queueunshift
s. 不知道有什么unshift
作用?与push
jQuery Loader 队列相对。我不是很清楚
bID
吗?在setInterval
函数中。