我的jQuery是否有冲突?

时间:2012-10-01 04:01:49

标签: jquery html5 wordpress

HELP!

我正在使用自定义WP主题构建此网站:http://armandwho.com/site

我正在尝试添加全屏背景视频(http://codecanyon.net/item/easy-video-background/1365012)并且可以让它在此测试网站http://clickjoe.com上运行(需要一个分钟加载)但不在构建网站上。

通过Safari Inspector加载页面时发现错误:

/ site /#:232TypeError:'undefined'不是函数(评估'$(“body”)。video_background')

任何人都可以直接说出问题所在吗?

更新:我唯一能找到的东西在加载构建时会有所不同。测试站点是文件“http://clickjoe.com/flash/video.swf”加载但该文件没有加载到BUILD站点上,并且调用完全相同。有什么东西阻止加载这个文件?

2 个答案:

答案 0 :(得分:1)

首先,你包括jQuery 1.6.2:

<script type="text/javascript" src="jquery/jquery-1.6.2.min.js"></script>

这会设置1.6.2的jQuery$个对象。然后你加入video_background插件:

<script type="text/javascript" src="js/video_background.min.js"></script>

这扩展了jQuery 1.6.2的jQuery$对象以添加video_background方法。稍后,您将包含jQuery 1.7.2:

<script type='text/javascript' src='http://armandwho.com/site/wp-includes/js/jquery/jquery.js?ver=1.7.2'></script>

这会覆盖(!!!) 1.6.2的jQuery$个对象,video_background方法会随之而来。然后,在最后,您尝试拨打video_background

$("body").video_background({ /* ... */ });

...但video_background已经消失。


解决方案是只包含一个jQuery ,并在video_background插件之前包含它。

答案 1 :(得分:0)

页面加载后在控制台中运行此代码,它可以工作......:

$("body").video_background({ format:"16:9",
    mp4:"video/AM.mp4" ,
    formatMobile:"16:9",
    mp4Mobile:"video/AM.mp4" ,
    loop:"true",
    autoplay:"true",
    muted:"true"
  });

jQuery(document).ready();处理程序正在解雇(你得到一个错误),我只是想不通原因。此页面上有大量脚本,可能存在冲突。

当ready()处理程序触发时,可能是video_background javascript文件未正确加载?

您可以尝试逐个删除其他脚本,直到找出问题所在。