jQuery addClass到标签问题

时间:2010-01-14 14:18:09

标签: jquery element anchor addclass

我的html代码中有这个:

<ul id="navlist"
<li id="tabItem1"><a href="#">Item one</a></li>
<li id="tabItem2"><a href="#">Item two</a></li>
<li id="tabItem3"><a href="#">Item three</a></li>
<li id="tabItem4"><a href="#">Item four</a></li>
</ul>

我想用这样的jquery向一个元素添加一个类:(它不能正常工作)

var currentTab = 1;

$(document).ready(function()
{        
  $("li#tabItem" + currentTab + ":has(a)").addClass("navlistHover");
  //console.log("li#tabItem" + currentTab + ":has(a)");
});

当删除a元素并像下一个例子那样执行时,比没有问题。

$("li#tabItem" + currentTab).addClass("navlistHover");

我尝试过以下代码:

$('navlist li#tabItem' + currentTab + ' a').addClass('navlistHover');

但它不起作用,很奇怪

2 个答案:

答案 0 :(得分:2)

试试这个:

$('navlist li#tabItem' + currentTab + ' a').addClass('navlistHover');

:has()选择器选择将a元素作为子元素的项目:

http://docs.jquery.com/Selectors/has

答案 1 :(得分:0)

如果您为

添加html结束标记,它会起作用

<ul id="navlist">