我有嵌套列表,我需要为每个项目设置样式。通常我会做这样的事情:
$('#myList li').addClass('myClass');
但是,因为它们是嵌套的,所以我想我只需要设置文本样式。我如何使用 jQuery 执行此操作?我试过这个,但没有用:
$('#myList li').text().addClass('myClass');
这是 HTML
<ul id="myList">
<li>
item 1
</li>
<li>
item 2
<ul>
<li>
asdasd
</li>
</ul>
</li>
</ul>
我需要为每个列表项设置样式
最佳答案
一级,直子
$('#myList > li').addClass('myClass');
二级及以上
$('#myList li li').addClass('myClass');
此主题已大量记录 on jquery api selector page
现在您的问题已被编辑:您需要设置所有列表项的样式:
CSS
li { /* will affect ALL list-items */}
现在你说得更清楚了:
包装 LI 元素内的内容
$('li').wrapInner( "<span class='your-css-selector'></span>" );
现在您展示了您不会搜索比复制粘贴解决方案更多的内容:
包装 LI 元素中的内容,但不包装另一个内部元素中的内容
$('#myList li').each(function(){
$(this).contents().first().wrap("<span/>")
});
归功于user PLS从他的评论中复制粘贴。
关于javascript - 使用 jQuery 添加类到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19988175/