我为什么得到'$ is undefined'?

Ste*_*ven 0 wordpress jquery

我在Wordpress网站上工作并从一些简单的sqripts开始:

(function () {
    // Flex
    if ($(".flexslider").length) {
        $('.flexslider').flexslider();
    }
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

我也试过了

$(function () {
    // Flex
    if ($(".flexslider").length) {
        $('.flexslider').flexslider();
    }
});
Run Code Online (Sandbox Code Playgroud)

jQuery正在运行,为什么不$被识别?如果我$jQuery它替换它工作正常.

这也不起作用:

jQuery(document).ready(function() {

    $('.section_header').click(function(){
        alert('test');
    });
});
Run Code Online (Sandbox Code Playgroud)

iCo*_*nor 5

   (function ($) {
        // Flex
        if ($(".flexslider").length) {
            $('.flexslider').flexslider();
        }
    })(jQuery);
Run Code Online (Sandbox Code Playgroud)

试试这个

顶部参数是用作底部参考的参考

所以例如你可以做到这一点

(function (somethingHereCool) {
    // Flex
    if (somethingHereCool(".flexslider").length) {
        somethingHereCool('.flexslider').flexslider();
    }
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

这种情况发生的原因(主要是在wordpress中)是因为wordpress使用jQuery的$.noConflict() By Defualt

所以这基本上意味着$不再属于jQuery,所以你可以像上面那样做,并重新定义该范围内的$供你使用.你基本上复制jQuery并将其交给$