我在同一页上使用厚框和手风琴时遇到了问题。我已经检查过它们是否都使用最新版本的jquery。下面是我包含的内容。不包含其他jscript文件。如果这会导致问题,我会在wordpress模板上使用它。
<script type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/foxintouch/javascript/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/foxintouch/javascript/jquery.accordion-1.2.2.js"></script>
<script type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/foxintouch/javascript/jquery.accordion-1.2.2.source.js"></script>
<!-- thickbox -->
<script type="text/javascript" src="<?php bloginfo('url'); ?>/wp-content/themes/foxintouch/javascript/thickbox/thickbox.js"></script>
<link rel="stylesheet" href="<?php bloginfo('url'); ?>/wp-content/themes/foxintouch/javascript/thickbox/thickbox.css" type="text/css" media="screen" />下面是对accordion的调用:
$(document).ready(function () {
$('#sidebar ul').accordion();
});网址到我的网站是http://clients.bionic-comms.co.uk/fox/foxintouch-wp/issue/13/wesco-new-range/任何帮助将非常感谢。谢谢
发布于 2009-05-13 08:35:39
您的代码包含对两个版本的jquery库的引用。第一个库(jquery-1.3.2.min.js)使用accordion插件进行了扩展,但随后被第二个库(jquery.js)覆盖。
这破坏了您的$('#sidebar ul').accordion();代码,因为第二个jquery库没有包含accordion函数的定义(只有第一个jquery库使用accordion插件进行了扩展)。
删除第二个jquery库后,thickbox停止工作,因为thickbox 3.1不支持jQuery 1.3+,但这可以通过changing a single line in thickbox.js轻松修复,网址为:
TB_TempArray = $("a[@rel="+imageGroup+"]").get();至
TB_TempArray = $("a[rel="+imageGroup+"]").get();发布于 2009-05-13 06:31:02
我不知道你为什么要在你的网站上使用noConflict函数--这是为了禁用jQuery中的$快捷方式,这样它就可以和Prototype这样的冲突库一起使用了。由于您的站点似乎只使用基于jQuery的代码,因此您不需要这样做。
禁用$快捷方式会在Thickbox的代码中导致致命错误,这反过来会导致整个页面的JS崩溃。
试着去掉noConflict代码,直接调用accordian函数,如下所示:
$(document).ready(function () {
$('#sidebar ul').accordion();
});此外,您不应该同时包含jquery.accordion-1.2.2.js和jquery.accordion-1.2.2.soure.js,只需单独使用压缩版本jquery.accordion-1.2.2.js即可。
https://stackoverflow.com/questions/856320
复制相似问题