如果是样式jQuery语句帮助

时间:2011-06-27 10:59:56

标签: jquery class menu

我有一个CMS网站,我正在使用水平主导航和侧边栏样式子导航。

水平菜单项适用于网站的各个部分,例如关于我们,我们的工作等。侧边栏子导航用于与该部分相关的内容。

一旦用户点击其中一个水平菜单项并显示该部分的内容和侧边栏导航,我想将一个类应用于与该部分相关的水平菜单项,而不管他们单击哪个侧边栏菜单项

为了实现这一点,每个侧边栏菜单项都有一个唯一的类,因此基本上我想用jQuery创建的是......

如果页面上显示“ul.about-sidebar”,则将“active”类添加到水平的“关于我们”菜单项​​。

但是我不确定如何说出陈述......任何想法?

2 个答案:

答案 0 :(得分:1)

这样的事情应该有效

if ($("ul.about-sidebar").length > 0) {
  $("#AboutUs").addClass("active");
}

如果About Us菜单项没有唯一ID,您可以使用以下选择器找到它:

$("#horizontalMenu .menuItem:contains('About Us')");

这将查找包含'menuItem'

元素下文本"About Us"的类Id="horizontalMenu"的元素

答案 1 :(得分:0)

$('ul').live('click', function(event) {
  var target = $(event.target);
  $('#' + target.attr('id')).removeClass('inactive-class').addClass('active-class');
});

这应该适用于您单击的任何ul元素。区分<ul>元素是可以的,因此水平导航栏中的所有元素都可以按类$('ul.horiz-navbar')选择。