我正在尝试通过自定义加载器加载一些 JavaScript 文件。以前我document.write()
用来写出我所有的文件,但我想使用 jQuery。我绝对不是 jQuery 专家,只使用了一些更基本的特性和功能,所以我上网。好吧,我找到了以下代码,它确实有效,但我在理解它时遇到了一些麻烦。这是代码:
(function() {
// Poll for jQuery to come into existence
var checkReady = function(callback) {
if (window.jQuery) {
callback(jQuery);
}
else {
window.setTimeout(function() { checkReady(callback); }, 100);
}
};
// Start polling...
checkReady(function($) {
// Use $ here...
});
})();
我理解代码正在检查 jQuery 是否可用,如果不可用,它将每秒检查一次。我也理解如果它可用,“轮询”下的代码将执行。我不理解的,以及我很难理解的,是整个callback
参数和checkReady
变量。
checkReady
既是变量又是函数?如果它是一个变量,它是顶部的一个函数,那么它如何在下部的代码中具有与之关联的不同函数?另外,回调参数实际上在做什么?