我们有一些代码,这些代码被拉入并在许多网站上使用。我无法控制目标网站。
我们一直在使用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});
});当我们的代码包含在内时,我们会得到以下错误:
未捕获TypeError:对象没有方法“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对象?
发布于 2013-03-26 22:35:36
如果调用.noConflict(true) (documentation):
如果由于某种原因加载了两个版本的jQuery (不推荐),则从第二个版本调用$.noConflict(true)会将全局作用域的jQuery变量返回给第一个版本的变量。
然后,您可以将jQuery覆盖为先前加载的版本。
您必须保留自己对jQuery的引用并使用它。参见this for more discussion。
https://stackoverflow.com/questions/15638296
复制相似问题