切换到jQuery noconflict,我该如何修复代码?

我只是改变了我的wordpress主题加载jQuery的方式,从手动加载谷歌版本到排列wordpress附带的版本。 wordpress附带的版本中包含“noconflict()”,因此$快捷方式不再适用于我的所有jQuery,而是需要在其中使用“jQuery”。

我有很多.js脚本和很多jquery设置页面上的初始化,现在没有一个工作,因为它全部使用速记$。

我的问题是,假设我需要使用wordpress附带的noconflict版本,修复速记代码的最佳方法是什么?

我应该在每个脚本的顶部添加这样的行吗?

jQuery(document).ready(function($) { 

或者我应该“在文件中查找”所有$并用jQuery替换?

WordPress推荐:好读http://codex.wordpress.org/Function_Reference/wp_enqueue_script#jQuery_noConflict_wrappers

http://api.jquery.com/jQuery.noConflict/

 (function($) { // $() will work as an alias for jQuery() inside of this function })(jQuery); 

你可以传入一个立即执行的匿名函数jQuery对象和你想在沙箱(函数)中使用的任何其他API的\对象:

 (function($, window, undefined) { }(jQuery, window)); 

这可以通过锁定jQueryundefined以及对代码至关重要的任何其他API的实现来减轻代码冲突的可能性。

您可以使用立即执行的函数来创建名为$的变量,该变量设置为jQuery 。 这可以模拟切换到noconflict之前的行为:

 (function(){ var $ = jQuery; //now use $ as you always have })(); 

要么

 (function($){ //now use $ as you always have })(jQuery);