0

我已经阅读了所有处理我的相同问题但没有成功的帖子。

我创建了一个脚本来使用 jQuery 加载页面片段,该片段在只有 jQuery 引用的测试页面中运行良好。在我将代码嵌入到使用相同 jQuery 版本的 wordpress 主题中时,一切都停止了工作。

我相应地得到了​​不同的结果,我的脚本引用被嵌入的位置。

  • 如果代码在页面的最后,它就不起作用,可能是由于 .noConflict(); 的影响。叫到别的地方。

  • 使用 $ = jQuery.noConflict(); 重新设置对象 $ 不工作;我在控制台中没有收到错误,但代码没有按预期工作。

  • 在 jQuery 引用之前加载脚本引用会产生标题中的错误。

我真的对我得到的结果感到困惑,我想知道是否有人可以解释我在哪里弄错了。

4

1 回答 1

0

Wordpress 会在嵌入 jQuery 后自动调用jQuery.noConflict(),因此不会与其他使用$. 它实际上意味着$不再可能使用 jQuery by。

有两种可能的解决方案:

  1. 使用jQuery代替$,例如像这样:

    jQuery(function() {
        jQuery('a').click(function() {
            // ... more code ...
            // Just replace all $s with jQuery
        });
    });
    
  2. 使用IIFE在本地重新启用$

    (function($) {
        // All your code goes here, $ will work as usual
    })(jQuery);
    
于 2013-01-13T19:26:11.260 回答