我在我的网站上使用了许多 jQuery 插件(例如owl carousel),它们在任何地方都可以正常工作,除了一个页面,我需要另一个脚本来将另一个站点的内容加载到 iframe 中。
在问题页面上,我的所有 jQuery 插件都出现错误,即 owl carousel:
$(...).owlCarousel is not a function
我尝试在无冲突模式下运行 jQuery:
jQuery.noConflict();
(function($){
$(function(){
$('.carousel').owlCarousel({
items: 3,
lazyLoad: true
});
});
})(jQuery);
但我仍然得到同样的错误。
我已经仔细检查了我的文件路径是否正确,并且文件正在以正确的顺序加载。他们是:
<script type="text/javascript" src="mysite.com/jquery/jquery.min.js"></script>
<script type="text/javascript" src="mysite.com/owl-carousel/owl.carousel.min.js"></script>
<script type="text/javascript" src="mysite.com/custom.js"></script><!-- call to owl carousel-->
在正文中,我有一个用于加载 iframe 的占位符 div。然后我包含加载 iframe 的脚本:
<script type="text/javascript" src="mysite.com/iframe-script.js">
在此之后,为 iframe 进行了一些简单的 javascript 配置设置,仅此而已。
iframe 脚本有几千行未缩小,有点超出我对 javascript 的理解,但据我所知,它使用自己的自定义变量来引用 jQuery,这就是为什么我不认为这个问题是 jQuery 冲突问题。
jQuery 在 中仍然有效mysite.com/custom.js
,即所有 onclick 事件都会触发且没有错误。所以jQuery正在工作。只是没有我正在使用的 jQuery 插件。
这里出了什么问题?