繁体   English   中英

jQueryUI和jQuery插件冲突

[英]jQueryUI and jQuery Plugin Conflict

我使用的是jQuery插件,它与jQueryUI Effects Core中的某些内容冲突,很可能与简化动画有关

我不能发布代码,因为该插件不是开源的,所以我的问题是:有什么办法可以捕获此错误并进行修复?

在jQueryUI Effects Core中,如果我删除以下代码,则两个插件都可以正常工作且没有冲突

$.effects = {
    effect: {}
};

我什至不知道那是为了什么,所以我想了解。

在此先感谢任何尝试帮助我的人。

如果您正在库本身中寻找冲突,我将使用jQuery的开发版本。 我确定您已经在使用某种调试工具,例如firebug或chromes javascript控制台。 从那里,您只需要找到错误并获得堆栈跟踪。 Firefox的“打破所有错误”功能在这种情况下很有用。

也不要害怕将自己的代码添加到jquery的开发版本中。 弄乱它并将其视为您自己的代码,您随时可以再次下载。

祝好运!

就像jQuery一样,许多JavaScript库都将$用作函数或变量名。 在jQuery的情况下, $只是jQuery的别名,因此无需使用$即可使用所有功能。 如果我们需要在jQuery旁边使用另一个JavaScript库,则可以通过调用$.noConflict()$.noConflict()控制权返回到另一个库:

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

结合.ready()方法对jQuery对象进行别名的功能,此技术特别有效,因为在传递给.ready()的回调中,如果我们希望以后不必担心冲突,则可以使用$:

<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
  $.noConflict();
  jQuery(document).ready(function($) {
    // Code that uses jQuery's $ can follow here.
    $("div").hide();
  });
  // Code that uses other library's $ can follow here.
  $("content").style.display = 'none';
</script>

资料来源: jQuery.noConflict

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM