Jquery 索引所有内容并排除某些div

Jquery 索引所有内容并排除某些div,jquery,indexing,Jquery,Indexing,我试图对文档中的所有内容编制索引,如下所示: var index = $('body *').index(this); <li id="2">2</li> 现在我想从所有项目中删除文本: $('body *').contents().filter(function() { return this.nodeType == 3; }).remove(); 问题是我想从remove函数中排除某个元素。此元素具有如下文本形式的数字: var index = $('b

我试图对文档中的所有内容编制索引,如下所示:

var index = $('body *').index(this);
 <li id="2">2</li> 
现在我想从所有项目中删除文本:

$('body *').contents().filter(function() {
  return this.nodeType == 3;
}).remove();
问题是我想从remove函数中排除某个元素。此元素具有如下文本形式的数字:

var index = $('body *').index(this);
 <li id="2">2</li> 
  • 2

  • 因此,根据其
    索引(2)
    ,remove函数不应使用
    id=“2”
    li
    中删除文本。我该怎么做?这就是我到目前为止所做的:

    您可以使用选择器排除它:

    $('body *').not("li#2").contents().filter(function() {
      return this.nodeType == 3;
    }).remove();
    

    .remove()
    之前插入一个
    .not('#2')
    将其用作“not”元素的选择器

    var qw = $('li:eq(' + $("span").text() + ')');
    
    看到这个更新的提琴


    我强烈建议使用一个ID来标识跨度,因为如果页面上有任何其他跨度,这显然会中断:)

    我想用#2的文本(即索引编号)来排除它。我正在寻找一种方法,通过#2Hi的文本给出的索引来排除它,我不是在寻找一个解决办法…我需要保留它的索引是第2号(零基索引),这不是一个解决办法。我想我当时根本不明白你的问题。我现在意识到我的问题有点让人困惑。看看这把小提琴,我把数字2放在了一个跨度内。现在,我想通过索引保留列表项。索引保存值0,1,2,因此我需要通过span(变量)中的文本进行保存。在这种情况下,它是第二个。(希望我现在明白了…)所以基本上“不是span.text给出的索引号”好的,我已经更新了小提琴,并将更新答案以适应它:)