我得到一个类似于以下内容的*.js文件代码:
(function(a){
a("#div_element").removeClass("show message");
....
})(jQuery);
我试着去理解:
$("#div_element").removeClass("show message");
发布于 2011-05-24 05:37:11
函数(A ){ /*…*/ }是一个直接以jQuery作为参数调用的匿名函数。因此,匿名函数中的a
与jQuery
相同
来自jQuery网站
示例:恢复$别名,然后创建并执行一个函数,以便在函数范围内提供$ as jQuery别名。在函数内部,原始$对象不可用。这对于大多数不依赖于任何其他库的插件来说都很好。
jQuery.noConflict();
(function($) {
$(function() {
// more code using $ as alias to jQuery
});
})(jQuery);
// other code using $ as an alias to the other library
也请阅读这篇文章:
发布于 2011-05-24 05:52:07
通过这样的思考,也许更容易理解这种机制:
(function( blah ) {
blah("hello");
}) ( alert );
注意blah
是如何成为alert
的代理的。这只是一种不污染全局命名空间的奇特方法(许多库使用$
作为全局变量)。
https://stackoverflow.com/questions/6106089
复制相似问题