我正在寻找一些东西,它将允许我添加一个id标记到第9个li列表中的一个标记中。我甚至不确定这是否可能?
代码如下:
<ul id="p7menubar">
<li><a href="#" class="trigger">Home</a></li>
<li><a href="#" class="trigger">About Us</a></li>
<li><a href="#" class="trigger">Collections</a></li>
<li><a href="#" class="trigger">Stockists</a></li>
<li><a href="#" class="trigger">News / Press</a></li>
<li><a href="#" class="trigger">How to Order</a></li>
<li><a href="#" class="trigger">Terms & Conditions</a></li>
<li><a href="#" class="trigger">Contact Us</a></li>
<li><a href="#" class="trigger" XX ID TAG TO GO HERE XX >Online Store</a>
<ul id="menuitem_9_0">
<li><a href="#" >Baby Clothing</a></li>
<li><a href="#" >Boys Clothing</a></li>
<li><a href="#" >Girls Clothing</a></li>
</ul>
</li>
</ul>
如果有人能帮我,那就太好了:)
发布于 2009-11-09 00:46:20
在jQuery中,您应该能够在单个选择器中完成所有操作:
$("#p7menubar > li:nth-child(9) > .trigger").attr("id","MyNewID");
“将标签与p7Menubar中第九个LI标签内的触发器类进行匹配”。
更新:看起来我错了,第n个孩子是1索引的。也更新为更明确(感谢Joel Potter)
发布于 2009-11-09 00:48:33
我认为最快的方法是:
$('#p7menubar').find('li:eq(8)').attr('id', 'yourID');
如果我错了,请有人纠正我,但我相信这是通过首先利用getElementById优化的,因为在find()之前只有一个ID选择器。
更新
$('#p7menubar > li:eq(8)').attr('id', 'yourID');
发布于 2009-11-09 00:51:16
迈尔斯的解决方案(已删除)几乎是一个宾果,但他遗漏了id的"#“选择器前缀。
我试过他的代码,它工作了!
<a onclick="$('#p7menubar').children()[8].id = 'QWERTY';">id it!!</a>
https://stackoverflow.com/questions/1698512
复制