众所周知,在jQuery语法中,$符号是jQuery的简写方式。但在某些情况下,可能需要在同一个页面引入其他javascript库(比如Prototype)。因为$简短方便,很多的库也是使用$符号。为了避免名称冲突,jQuery提供了noConflict()方法来解决这个问题。调用该方法可以把对$标识符的控制权让给其他库。
一般模式:
<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。或者通过定义新的名称来代替$符号。
var jq=jQuery.noConflict();
另外还有一个技巧,可以再.ready()方法中使用$。它的回调函数可以接收一个参数,这个参数为jQuery对象本身,可以重新命名jQuery为$,这样也是不会造成冲突的。
jQuery.(document).ready(function($){ //这里可以正常使用$ })
当然,简写方式也是可以的
jQuery(function($){ //这里可以正常使用$ })
以上就是本文的全部内容,希望对大家学习jquery避免冲突方法有所帮助。
新闻热点
疑难解答