众所周知,在jQuery语法中,$符号是jQuery的简写方式。但在某些状况下,可能须要在同一个页面引入其余javascript库(好比Prototype)。由于$简短方便,不少的库也是使用$符号。为了不名称冲突,jQuery提供了noConflict()方法来解决这个问题。调用该方法能够把对$标识符的控制权让给其余库。javascript
通常模式:java
<script src="prototype.js"></script>//1.包含jQuery以外的库(好比Prototype) <script src="jquery.js"></script>//2.包含jQuery库取得对$的使用权 <script> jQuery.noConflict();//3.调用noConflict()方法,让出$,把控制权让给最早包含的库 </script> <script src="myscript.js"></script>
让出$控制权后,须要使用jQuery方法时,则不能用$来调用了,要用jQuery。或者经过定义新的名称来代替$符号。jquery
var jq=jQuery.noConflict();
另外还有一个技巧,能够再.ready()方法中使用$。它的回调函数能够接收一个参数,这个参数为jQuery对象自己,能够从新命名jQuery为$,这样也是不会形成冲突的。函数
jQuery.(document).ready(function($){ //这里能够正常使用$ })
固然,简写方式也是能够的spa
jQuery(function($){ //这里能够正常使用$ })