我想删除li少于五的索引。所以我使用的是.eq()。我知道可以使用if语句完成,但我想在eq()内部使用if语句。
<ul>
<li>0</li>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
$('li').each(function (i) {
$(this).eq(function () {
if (i < 5)
return i;
else
return false;
}).remove();
});
答案 0 :(得分:5)
您可以使用lt()(小于)来获取索引较少的元素,然后给出值。
<强> Live Demo 强>
$('li:lt(5)').remove()
说明:选择匹配集reference内索引小于索引的所有元素。
与索引相关的选择器(包括此“小于”选择器) 过滤与表达式匹配的元素集 在他们之前。他们根据的顺序缩小设定范围 此匹配集中的元素jQuery doc。
答案 1 :(得分:0)
您可以使用:lt() Selector
$('li:lt(5)').remove()
答案 2 :(得分:0)
除了使用:lt()
选择器外,您还可以使用.slice()
:
$('ul').children().slice(0, 4).remove();