WordPress站点中两处function($)是否需替换为function(jQuery)?
关于jQuery中
function($)是否需要改为function(jQuery)的解答 嘿,别慌!作为非jQuery开发者碰到这种写法太正常了,我给你把这个事儿掰扯明白:
首先明确说——这两处function($)完全不需要修改,反而这种写法是jQuery里非常实用的「安全封装技巧」,我给你拆解下逻辑:
第一处自执行函数:
(function($){ // code here })(jQuery);
这里的思路是:我们定义了一个接受$作为参数的函数,然后立刻把全局的jQuery对象传进去当这个参数。这么做的好处是,在这个函数内部,你可以放心用更简洁的$代替jQuery写代码,同时还能避免和其他也用$当标识符的JS库(比如Prototype)冲突——因为函数内部的$是局部变量,不会干扰全局的$。第二处
ready回调:jQuery(document).ready(function($){ // code here });
这是jQuery的贴心设计:当你给ready方法传一个带$参数的函数时,jQuery会自动把自身作为这个参数传进去。同样的道理,在这个回调函数里,你可以直接用$指代jQuery,不用怕全局的$被其他脚本占用。
如果强行把这两处改成function(jQuery),反而会给自己添活儿:你得把函数内部所有的$都替换成jQuery才能正常运行,完全没必要。
所以结论就是:保持原代码不动就好,这是标准的、安全的jQuery写法~
内容的提问来源于stack exchange,提问作者Steve
相关产品推荐
相关产品推荐

