【问题标题】:Jquery plugin conflictsjQuery插件冲突
【发布时间】:2012-08-20 08:36:35
【问题描述】:

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

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

审核插件代码是不可行的,因为代码堆积如山,需要考虑的开发时间很短。

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

我用过:

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

});

已经..

【问题讨论】:

  • 您能否提供您正在使用的特定插件(假设它们是公开可用的)?根据您的问题,很难判断不兼容性是由插件引起的,还是由它们在哪里/在什么地方操作引起的。一个 jsfiddle.net 示例将是理想的...

标签: javascript web conflict jquery


【解决方案1】:

在网上搜索了一些资源后,我找到了一些资源

  1. Jquery Plugin conflict

  2. How do I solve this jQuery plugins conflict?

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

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

似乎每个人都建议使用noconflict,但除了最后一个说它有效的人 - 我看不出它应该有效的原因,因为in documentations JQuery 解释说它适用于不支持的库t 使用 JQuery 但与它发生冲突。 (请参阅我在此处粘贴的第三个资源)。

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

【讨论】:

  • 我不能使用 jquery.noConflict 因为我必须触发它,然后在我的代码的每一行中用Jquery 替换$。编辑插件是不可行的。我认为 jquery.noConflict 不适用于插件?它只适用于 javascript/jquery 库?我不是指图书馆。只是像滑块、画廊、文件上传器等插件。
【解决方案2】:

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

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

以便在本例中使用其他引用“jQuery”调用所有方法。

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

  1. 包括所有 jQuery 文件(依赖于 jquery 的库和所有插件)。
  2. 触发 jQuery.noConflict();
  3. 包括所有其他库/插件。
  4. 无论在哪里调用 jquery 方法,都使用“jQuery”而不是“$”

希望对你有所帮助..

【讨论】:

  • 我不能使用 jquery.noConflict 因为我必须触发它,然后在我的代码的每一行中用Jquery 替换$。编辑插件是不可行的。我认为 jquery.noConflict 不适用于插件?它只适用于 javascript/jquery 库?我不是指图书馆。只是像滑块、画廊、文件上传器等插件。
猜你喜欢
  • 2012-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-18
  • 2011-04-04
相关资源
最近更新 更多