jQuery.noConflict()
函数用于让出jQuery库对变量$(和变量jQuery)的控制权。
一般情况下,在jQuery库中,变量$
是变量jQuery
的别名,它们之间是等价的,例如jQuery("p")
和$("p")
是等价的。由于变量$
只有一个字符,并且特点鲜明,因此我们更加习惯使用$
来操作jQuery库。
不过,其他JS库也可能使用变量$
来进行操作,例如Prototype库。这个时候两个库可能会由于变量$
的控制权问题而发生冲突。
此时,你可以使用该函数让出jQuery库对变量$
的控制权,将该变量交给上一个实现它的JS库,之后我们只能使用变量jQuery
来操作jQuery库。
此外,使用该函数,还可以同时让出变量$
和变量jQuery
的控制权,从而实现多个不同版本的jQuery库共存(详情见下面的示例说明)。
该函数属于全局jQuery
对象。(原文链接:http://www.365mini.com/page/jquery_noconflict.htm)
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="prototype.js"></script>
<script src="jquery.js"></script>
</head>
<body>
<input type="text" id="a" value="aaaaa">
<script>
var sowhat = jQuery.noConflict()
alert('这是jquery弹出的'+sowhat('#a').val());
alert('这是prtotype弹出的'+$F('a'));
//alert('这是jquery弹出的'+jQuery('#a').val());
</script>
</body>
</html>