jQuery.noConflict以及如何使用它

Phi*_*lip 4 jquery

我尝试使用jQuery.noConflict()但在window.load函数我得到一个"$不是函数"错误.

我的代码:

jQuery.noConflict();

jQuery(document).ready(function($) {
    /** Dropdown Menu **/
    $('ul.tabs li:has(ul)').bind("click", function() {
        $(this).find('ul').show('normal');
        //event.stopPropagation();
    });
    $('ul.tabs li').bind("mouseleave", function() {
        $(this).find('ul').hide('normal');
        //event.stopPropagation();
    });
});

jQuery(window).load(function($) {
    $('#container').fadeIn('normal');
});
Run Code Online (Sandbox Code Playgroud)

如果我使用jQuery而不是'$'它工作正常,但是可以继续使用'$'吗?
谁知道/明白这有什么问题?
谢谢!

Fré*_*idi 12

代码的第一部分是有效的,因为jQuery的$对象总是传递给ready处理程序.但是,相同的行为不适用于load处理程序.

如果您不想在处理程序的主体中替换$,jQueryload可以在闭包中捕获该变量:

(function($) {
    $(window).load(function() {
        $("#container").fadeIn("normal");
    });
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

或者,您可以在load处理程序中注册处理ready程序,并在其中$正确绑定.