在 WordPress 中的 jQuery 中加载无冲突模式



我正在尝试摆脱这个未捕获的类型错误:

$ 不是 javascript 的函数.js?ver=5.0.3:65

这是一个WordPress主题,我认为我已经在functions.php文件中正确加载了脚本:

wp_enqueue_script('script-name', get_template_directory_uri().'/assets/js/javascript.js', array('jquery'), false, true);

然后,正如此处答案中所建议的那样,我将现有代码包装到一个匿名函数中,并将jQuery作为参数传递

(function($){
  // code
})(jQuery);

然而,类型错误仍然存在。我想在noConflict模式下加载jQuery,但不明白除了将jQuery.noConflict();添加到我的javascript.js文件的顶部之外,还能做些什么。我试过这个,但没有用。

对于如何正确执行此操作的任何建议,我们不胜感激。

我的网站上线在这里: https://refresh.drawyourpets.com/

所以我去看了你的脚本,它看起来有点像这样:

(function($){
    // uses $
})
(function($){
    // uses $
})
(jQuery);

这对我来说似乎是完全错误的,即使从纯粹的句法角度来看也是如此。您要做的是包装脚本一次,如下所示:

(function($) {
    // your entire script using $ normally:
})(jQuery);

这个想法是,你正在将jQuery传递给一个立即执行的函数,并且在函数内部你可以安全地$调用它。

最新更新