js报TypeError $(...) is null错误,jquery失效的原因及解决办法

      最近在工作中发现个问题,原本好好的网页,写了一些自己的jquery代 码之后,竟然总是不起作用,无论写的多么简单,都不起作用,似乎jquery失效了一般,在火狐下调试看了下,页面报TypeError: $(...) is null       $("#c1").change(function(){……      这种错误,找了半天原因最后发现竟是页面中加载的一个插件给捣的鬼,是它将jquery的$方法给覆盖了。对于这个问题,现在分享两种解决方法。

    

     (1)删冲突插件,jquery作为基础库,当然是没有理由被删了。这个方法最直接了。

jQuery.noConflict();//将变量$的控制权让渡给给其他插件或库

jQuery(function(){//不在直接使用$,而是使用jQuery

                 jQuery("p").click(function(){

                       alert( jQuery(this).text() );

                  });

        });

   (2)如果你感觉jquery写起来比较累,还可以这么写:    

               将jquery的$方法改名,具体改名方法如下:

             var myJ=jQuery.noConflict();//自定义一个别名

             myJ(function(){//使用jQuery

                  <code class="plain"> <code>myJ("p").click(function(){

                           alert( myJ.text() );

                  });

});

  
  
    
        
    <br>
  
 

相关推荐