jquery访问嵌套div

时间:2011-03-02 13:27:40

标签: jquery class html nested add

这是我的问题。我有这个简单的菜单。

<div id="menu"> 
    <ul>
        <li> <a id="home" href="home.html"> home </a>           </li>
        <li> <a id="profile" href="profile.html"> profile</a>   </li>       
    <ul>
</div>

我想使用jQuery在标签中添加一个“.active”类,其中 id =“home”。

我写的是:$('a#home').addClass("active");但是没有用。 如何访问此嵌套标记并添加一些类??

任何建议都将受到高度赞赏! 感谢名单

3 个答案:

答案 0 :(得分:2)

典型的错误是将jQuery代码放在标题中,但不包含在就绪事件中。

确保您拥有:

$(document).ready(function(){
 $('a#home').addClass('active');
});

在这里查看实时测试:http://jsfiddle.net/QdVLs/(请记住jsfiddle在上面的就绪方法中自动包装任何代码)

答案 1 :(得分:1)

您可能需要在准备好文件后使用它

$(document).ready(function(){
    $('a#home').addClass("active");
});

原因可能是当你的javascript被执行时,dom可能没有创建元素a#home / #home。可以使用上面显示的ready方法处理此案例。

您可以在代码之前添加alert($('a#home').length)语句来测试案例。它应警告1您可以尝试使用ready()并重试,这次将alert()置于ready()方法中。

答案 2 :(得分:0)

$('a#home').addClass("active");应该有用。

你有其他具有相同身份的元素吗?

你把这段代码放在哪里了? (它应该在文档就绪事件之后执行)