Jquery插件冲突

时间:2012-08-24 18:59:41

标签: javascript web conflict jquery

你们如何解决Jquery插件之间的冲突。冲突可能是两个或多个Jquery插件(例如文件上载插件)单独正常工作但在包含第二个插件时导致错误或意外行为的情况。

我现在遇到这个问题,我正在考虑使用iframe将我的网页部分与其他所有内容隔离开来。但是我想尽可能避免这种情况来解决这些冲突。

审核插件代码是不可行的,它的代码很多,而且开发时间很短。

我不能使用jquery.noConflict,因为我必须触发它,然后在我的代码的任何行中用$替换Jquery。编辑插件是不可行的。我以为jquery.noConflict不能用于插件吗?它只适用于javascript / jquery库?我不是在想图书馆。只是插件,如滑块,画廊,文件上载等等。

我用过:

(function($) {
jQuery.noConflict();

});

已经..

2 个答案:

答案 0 :(得分:1)

在网上挖掘后,我发现了一些资源

  1. Jquery Plugin conflict

  2. How do I solve this jQuery plugins conflict?

  3. http://forum.jquery.com/topic/jquery-plugins-conflict

  4. 最后一个 http://www.jotform.com/help/130-Fixing-Jquery-Plugin-Conflicts-jCarousel

    似乎每个人都建议使用noconflict,但除了最后一个说它有效的人 - 我没有看到它应该有效的原因,因为in documentations JQuery解释说它是用于不使用JQuery但与之冲突的库。 (参见我在这里粘贴的第三个资源)。

    无论如何,似乎最好的选择是深入研究代码并进行修改。

答案 1 :(得分:0)

我遇到了jquery冲突的问题,但我的情况是我也使用了prototype.js。我为此制定了解决方案。如果它有帮助,这里是一个指针结帐。

当某些其他插件也使用“$”时发生jquery冲突。因此我们需要定义jQuery.noConflict

所以在这种情况下使用其他引用“jQuery”调用所有方法。

尝试在页面上包含脚本文件,如下所示。

  1. 包含所有jQuery文件(库和所有依赖于jquery的插件)。
  2. fire jQuery.noConflict();
  3. 包括所有其他库/插件。
  4. 无论在哪里调用jquery方法,都使用“jQuery”而不是“$”
  5. 希望这可以帮助你...