我有这样的结构:
<ul id="#my-list">
<li><a class="class-1" href="#">Link</a></li>
<li><a class="class-2" href="#">Link</a></li>
<li><a class="class-3" href="#">Link</a></li>
</ul> 我希望jquery检查..class 1在#my-list中是否存在,如果不存在,则应该删除.li (仅仅是第一个)。
基本上,当删除第一个链接时,也应该删除第一个li元素。
发布于 2013-11-24 17:26:04
$('#my-list:has(.class-1) li:first').remove()当然,这需要一个ID,例如:
<ul id="my-list">FIDDLE
根据你的问题,由于一些奇怪的原因,你想要做相反的事情,那就是:
$('#my-list:not(:has(.class-1)) li:first').remove()但是问题是,您如何删除锚,为什么不直接删除列表项呢?
发布于 2013-11-24 17:30:55
基本上,当删除第一个链接时,也应该删除第一个li元素。
听起来你想:
$('#my-list > li').first().filter(function() {
return $(this).find('a').length === 0;
}).remove();如果您想将其应用于所有li元素,而不仅仅是第一个元素,只需省略.first()。
https://stackoverflow.com/questions/20177501
复制相似问题