有在给定索引后分离所有子项的示例(如 this 一个),但没有仅删除一个的示例。
我尝试过的事情(显然是不正确的):
this.element.find('.nav-tabs').children().splice(index, 1).remove();
this.element.find('.nav-tabs').children().slice(index).detach();
以及其他一些变体。我需要类似第二个选项的东西,它也可以在该索引之后保留子项。我错过了什么?我可以拼接它并以某种方式重新分配 child 吗?
最佳答案
您可以使用 eq()
通过索引定位集合中的元素。试试这个:
this.element.find('.nav-tabs').children().eq(index).remove();
这是一个工作演示:
$('.nav-tabs').children().eq(2).remove(); // remove third item, index 2
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<ul class="nav-tabs">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
splice()
和 slice()
对您不起作用的原因是因为它们返回 DOM 元素对象数组,而不是 jQuery 对象。
关于javascript - 删除索引处的单个 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31437211/