首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将“$”(美元符号)替换为"JQuery“

将“$”(美元符号)替换为"JQuery“
EN

Stack Overflow用户
提问于 2011-07-19 19:23:41
回答 2查看 60K关注 0票数 56

第一个代码片段不起作用。但是,当将所有$(美元符号)替换为jQuery(请参见第二个代码片段)时,它将开始工作。但我真的不明白为什么?有人能给我解释一下吗?非常感谢!

第1个代码片段

代码语言:javascript
复制
jQuery.noConflict();
               $(document).ready(function(){    
                    $("#insideTable > tbody > tr:odd").addClass("odd");
                    $("#insideTable > tbody > tr:not(.odd)").hide();
                    $("#insideTable > tbody > tr:odd").show();
                    $("#insideTable > tbody > tr.odd").click(function(){
                        $(this).next().toggle();
                        $(this).find(".arrow").toggleClass("up");
                    });

                });

第二个代码段

代码语言:javascript
复制
        jQuery.noConflict();
        jQuery(document).ready(function(){

                jQuery("#insideTable > tbody > tr:odd").addClass("odd");
                jQuery("#insideTable > tbody > tr:not(.odd)").hide();
                jQuery("#insideTable > tbody > tr:odd").show();
                jQuery("#insideTable > tbody > tr.odd").click(function(){
                    jQuery(this).next().toggle();
                    jQuery(this).find(".arrow").toggleClass("up");
                });

            });
EN

回答 2

Stack Overflow用户

发布于 2011-07-19 19:26:35

这是因为jQuery.noConflict()将"$“从与jQuery的关联中”释放“出来。通常在你的代码中,你可以使用$来代替"jQuery“。如果你使用noConflict(),你就不能再这样做了,所以你必须用"jQuery";替换每个"$“。

许多JavaScript库使用$作为函数名或变量名,就像jQuery一样。在jQuery的例子中,$只是jQuery的别名,所以所有功能都可以在不使用$的情况下使用。如果我们需要在使用jQuery的同时使用另一个JavaScript库,我们可以通过调用$.noConflict()将$的控制权返回给另一个库:

您还可以创建一个全新的别名来使用

代码语言:javascript
复制
var myJqueryAlias = jQuery.noConflict();
myJqueryAlias(document).ready(function(){

        myJqueryAlias("#insideTable > tbody > tr:odd").addClass("odd");
        myJqueryAlias("#insideTable > tbody > tr:not(.odd)").hide();
        myJqueryAlias("#insideTable > tbody > tr:odd").show();
        myJqueryAlias("#insideTable > tbody > tr.odd").click(function(){
            myJqueryAlias(this).next().toggle();
            myJqueryAlias(this).find(".arrow").toggleClass("up");
        });

    });
票数 102
EN

Stack Overflow用户

发布于 2011-07-19 19:26:42

调用noConflict()将删除$和jQuery函数之间的关联。这是为了让您可以使用另一个JavaScript库,该库也可以在没有冲突的情况下缩写为$。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6746352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档