jquery学习一:解决jquery和其他库的冲突
jquery用$作为自身的快捷方式
解决两种情况的冲突:
1、jquery库在其他库之后导入,可以使用jquery()函数作为创建jquery对象的工厂。
<script src="../prototype.js" type="text/javascript"></script> <script src="../jquery.js" type="text/javascript"></script> <script type="text/javascript"> jQuery.noConflict();//将$的控制权转交给其他的库 本例中把$转交给prototype jQuery(function(){ jQuery("#btn").click(function(){ alert("使用jquery"); }); }); $("pp").style.display = "none";//使用prototype.js隐藏此元素 </script>
另外,也可以自定义一个jquery的快捷方式:$j = jQuery.noConflict();
var $J = jQuery.noConflict();//自定义jQuery的快捷方式 $J(function(){ $J("p").click(function(){ alert("使用自定义jQuery的快捷方式"); }); }); $("pp").style.display = "none";//使用prototype.js隐藏此元素
如果还想使用$作为jQuery的快捷方式,那么
jQuery.noConflict();//将$的控制权转交给其他的库 本例中把$转交给prototype jQuery(function($){ $("p").click(function(){ alert("此处的$还是jQuer的快捷方式"); }) }) $("pp").style.display = "none";//使用prototype.js隐藏此元素
2、jquery库在其他库之前导入
如果jquery库在其他库之前导入,则不需要再使用jQuery.noConflict(),可以直接使用jQuery来做一些jQuery的操作
<script src="../jquery.js" type="text/javascript"></script> <script src="../prototype.js" type="text/javascript"></script> <script type="text/javascript"> jQuery(function(){ jQuery("#btn").click(function(){ alert("使用jquery"); }); }); $("pp").style.display = "none";//使用prototype.js隐藏此元素 </script>