在什么情况下需要jQuery.noConflict?

时间:2014-06-13 07:21:56

标签: javascript jquery html symbols

我想问一下,有什么实际的理由需要最大限度地使用jQuery.noConflict函数吗? 在外行人看来,我问,这个函数演变背后的原因是什么?

2 个答案:

答案 0 :(得分:8)

  1. 您正在使用另一个也使用$

  2. 的库
  3. 你必须使用多个版本的jQuery,主要是因为 插件依赖于不同版本的jQuery。

答案 1 :(得分:1)

jQuery库及其几乎所有插件都包含在jQuery命名空间中。作为一般规则,全局对象也存储在jQuery命名空间内,因此您不应该在jQuery和任何其他库(如prototype.js,MooTools或YUI)之间发生冲突。

也就是说,有一点需要注意:默认情况下,jQuery使用$作为jQuery的快捷方式。因此,如果您正在使用另一个使用该库的JavaScript库$变量,你可能会遇到与jQuery的冲突。为了避免这些冲突,您需要在将jQuery加载到页面之后以及尝试在页面中使用jQuery之前立即将jQuery置于无冲突模式。

对于E.g

<script src="other_lib.js"></script>
<script src="jquery.js"></script>
<script>
$.noConflict();
// Code that uses other library's $ can follow here.
</script>

你可以在这里阅读更多http://learn.jquery.com/using-jquery-core/avoid-conflicts-other-libraries/