как удалить элементы без указанного класса - PullRequest
7 голосов
/ 24 августа 2010

У меня большая HTML-страница. Некоторые элементы (могут быть p, h1, div и т. Д.) Помечены классом keep_me. Мне нужно удалить все элементы, присутствующие на странице БЕЗ этого класса? Есть идеи, как это сделать с помощью jQuery?

Я пробовал что-то подобное, но это не работает (очевидно;):

jQuery('#content *').remove(":not('[class=keep_me]')");

Ответы [ 2 ]

17 голосов
/ 24 августа 2010

Просто выполните:

jQuery('#content :not(.keep_me)').remove();

См. Документацию :

jQuery (': not (селектор)')

Выбирает все элементы, которые не соответствуют данному селектору.

5 голосов
/ 24 августа 2010

Использовать не () :

Метод .not (), как правило, быстрее и может в конечном итоге предоставить вам с более читаемым выбором, чем нажатие сложных селекторов или переменные в селекторный фильтр: (не).

$('#content *').not('.keep_me').remove();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...