我在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");
}
如果有人能帮助我,我真的很感激。
答案 0 :(得分:2)
cos nth-of-type不是有效的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/了解文档