0

次のようにドキュメント内のすべてにインデックスを付けようとしています:

var index = $('body *').index(this);

だから今、私はすべてのアイテムからテキストを削除したい:

$('body *').contents().filter(function() {
  return this.nodeType == 3;
}).remove();

問題は、削除機能から特定の要素を除外したいということです。この要素には、次のようなテキストとして数値があります。

 <li id="2">2</li> 

そのため、 remove 関数はliwithid="2"からテキストを削除すべきではありませんindex(2)。どうすればいいですか?これは私がこれまでに持っているものです: JsFiddle

4

3 に答える 3

1

これを「not」要素のセレクターとして使用します...

var qw = $('li:eq(' + $("span").text() + ')');

この更新されたフィドルを参照してください...

http://jsfiddle.net/p83Rg/7/

ただし、ID を使用してスパンを識別することを強くお勧めします。これは、ページに他のスパンがあると明らかに壊れてしまうためです :)

于 2013-04-20T12:58:58.543 に答える
0

セレクターで除外できます:

$('body *').not("li#2").contents().filter(function() {
  return this.nodeType == 3;
}).remove();
于 2013-04-20T12:51:00.210 に答える
0

.remove()インサートの前に.not('#2')

于 2013-04-20T12:51:44.923 に答える