1

スパンとその親で構成される特定の「選択」を除いて、すべてを削除したいと思います。

$('*').not('span:parents').remove();

これは私にはうまくいきません。運が悪くても多くのことを試しました。

4

2 に答える 2

7

すべての要素を選択する代わりに、削除する必要があるトップ レベルの要素を選択するだけで、その子には要素が子孫として含まれbodyていません。span

$('body').children().not($('span').parents()).remove();

$('span').parents()保持する必要がある子も含まbodyれます。

デモ: http://jsfiddle.net/dirtyd77/BaLAb/

于 2013-03-18T20:37:19.653 に答える
2

要素を保存し、残りを削除してから、もう一度配置することをお勧めします:

var saved = $('#a').closest('body>*').detach();
$(document.body).children().remove();
$(document.body).append(saved);

デモンストレーション

編集:フェリックスの答えを使用してください。実際に保存して元に戻す必要はありません...

于 2013-03-18T20:37:11.897 に答える