我正在使用 jQuery 开发一个网站,并将代码组织成几个脚本文件。
如果我没有弄错的话,最好的做法是像这个样板一样组织你的代码(它创建一个单独的范围并undefined
正确设置值):
(function($, undefined) {
$(document).ready(function() {
// code here
});
})(jQuery);
就我而言,我还将依赖一些服务器端脚本输出的一些外部配置,比如存储为全局变量site_config
。所以目前我的脚本样板是:
(function(window, undefined) {
var document = window.document;
var $ = window.jQuery;
var config = window.site_config;
// equivalent to $(document).ready(function() {...
$(function() {
// code here using `config`
});
})(window);
所以我的问题是:这个样板文件中是否有任何问题/陷阱?
具体来说:
- 可以
window
显式传入吗?(假设包装函数在全局范围内) - 我应该使用
window.document
orjQuery.document
吗?如果两者都错了,如何正确引用?