已经使用 jQuery 对象的站点上的 jquery noConflict

标签 jquery

我们有一些代码被引入并在许多网站上使用。我无法控制目标网站。

我们一直在使用 JQuery.noconflict() 来阻止我们的代码影响网站,但我们有一个已经在使用 JQuery 的目标,我不知道如何解决这个问题......

基本上,当我们的代码被拉入网站上的一些 Jquery 功能时,就会中断。

这是我们造成问题的 Jquery 的一个片段..

jQuery(function(){
jQuery('#superfish-4').supersubs({minWidth: 12, maxWidth: 27, extraWidth: 1}).superfish({
animation: {opacity:'show'},
speed: 'fast',
autoArrows: false,
dropShadows: true}).supposition().find('ul').bgIframe({opacity:false});
});

当包含我们的代码时,我们会收到以下错误:

未捕获类型错误:对象 [object Object] 没有方法“supersubs”

以下是我们的 Jquery 的一些示例。

<script src="jquery-latest.min.js" type="text/javascript"></script> 
<script>jQuery.noConflict(); 
jQuery(document).ready(function() { 
jQuery('head').append('<link rel="stylesheet" href="cssfilehere" type="text/css" />'); 
jQuery.get('htmlfilehere', function(data) { jQuery('div.fdmediabar-65144924').html(data); }); }); 
</script> <div id="idhere" class="classhere"></div>

我已经删除了类名和 URL,因为这是一个客户端项目。

我不确定如何以不同的方式引用 JQuery 对象?

最佳答案

如果您调用.noConflict(true) ( documentation ):

If for some reason two versions of jQuery are loaded (which is not recommended), calling $.noConflict(true) from the second version will return the globally scoped jQuery variables to those of the first version.

然后您可以将 jQuery 覆盖为之前加载的版本。

您必须保留自己对 jQuery 的引用并使用它。请参阅this for more discussion .

关于已经使用 jQuery 对象的站点上的 jquery noConflict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15638296/

相关文章:

javascript - 使用 jQuery html() 时在 html 中显示的特殊字符

javascript - 将所有元素包装在一个元素中,直到出现特定标记

javascript - wordpress子主题中错误的排队脚本顺序

javascript - jQuery 拖动调整相邻 DIV 的大小

javascript - 使用 JavaScript 定义元素高度的问题

jquery - 动态更改宽度和高度属性

javascript - Joomla 中 Mootools 和 jQuery 的冲突

jquery - 检测 jQuery 中是否至少填充了一个输入(作为数组)

javascript - 为什么我的 html img 突然消失,我需要清除缓存?

javascript - 如何显示接下来的三个图像单击加载更多按钮