0

我在 wordpress 中建立了一个儿童主题。我正在使用 jQuery 来隐藏和显示子菜单。除 IE 外,所有浏览器都运行良好。在 IE 中,我的 jQuery 都不适用于子菜单。当我尝试调试时,我得到了这个错误。

行:3 错误:语法错误,无法识别的表达式:nth-​​of-type

该错误出现在 wordpress 使用的内置 jQuery 库中。我在自己的 Jquery 中使用了第 n 个类型的选择器,但即使我删除了它们,问题仍然存在。这是我用来控制子菜单的 jQuery

if ($("body").hasClass('taxonomy-colordesign')){
$("#hybrid-categories-5 h4").toggleClass("tabDown");//pulls the background image in the tab
$("#hybrid-categories-5 h4").siblings('.dots').toggleClass('active');//activates the little square next to it
$("#hybrid-categories-5 h4").next("ul.xoxo.categories").toggleClass("openTab");//opens up the ul that contains the list of options
$(".menu-main-menu-container li:nth-of-type(3) a").addClass("current");
} 

else if ($("body").hasClass('taxonomy-colorart')){
$("#hybrid-categories-12 h4").toggleClass("tabDown");
$("#hybrid-categories-12 h4").siblings('.dots').toggleClass('active');
$("#hybrid-categories-12 h4").next("ul.xoxo.categories").toggleClass("openTab");
$(" #hybrid-categories-9, #hybrid-categories-3, #hybrid-categories-5").hide();
$(".menu-main-menu-container li:nth-of-type(2) a").addClass("current");

}

else if ($("body").hasClass('taxonomy-mediadesign')){
$("#hybrid-categories-3 h4").toggleClass("tabDown");
$("#hybrid-categories-3 h4").siblings('.dots').toggleClass('active');
$("#hybrid-categories-3 h4").next("ul.xoxo.categories").toggleClass("openTab");
$(".menu-main-menu-container li:nth-of-type(3) a").addClass("current");

}

如果有人可以帮助我,我将不胜感激。

4

1 回答 1

2

因为第 n 个类型不是有效的 jquery 选择器..

例如。

$(".menu-main-menu-container li:nth-of-type(2) a").addClass("current");无效改成

 $(".menu-main-menu-container li:eq(2) a").addClass("current");

您可以参考http://api.jquery.com/nth-child-selector/http://api.jquery.com/eq/获取文档

于 2012-04-15T17:42:51.473 回答