Выберите класс, не содержащийся в div - PullRequest
0 голосов
/ 07 июля 2011

Можно ли выбрать класс страницы без выбора того же класса, который был инкапсулирован в специальном div?

что-то вроде:

$(!".container").$(".selectedClass").dosomething..

или

$(".selectedClass").parent(!"container").dosomething..

Вот пример ...

<div class="blah">
    <div class="remove"><div>
</div>
<div class="blaha">
    <div class="remove"><div>
</div>
<div class="dont_remove_remove_here">
    <div class="remove"><div>
</div>
<div class="blahblah">
    <div class="remove"><div>
</div>

Я хочу удалить все классы "remove", но не в контейнере "dont_remove_remove_here".

Ответы [ 3 ]

1 голос
/ 07 июля 2011

Я бы никогда не использовал другие ответы «div: not (.container)» на этой странице в производственном коде, потому что это привело бы к крайне низкой производительности.

Код ниже гораздо эффективнее:

      $(".remove").each(function(i,elt) {
        if (!$(elt).parent().hasClass("dont-remove")) {
           $(elt).remove();
        }
      });
1 голос
/ 07 июля 2011

Если я правильно понимаю, это должно работать, но это будет довольно медленно. Кроме того, вы можете захотеть изменить div на что-то другое или усовершенствовать первую часть.

$("div:not(.container)").find(".selectedClass")
0 голосов
/ 08 июля 2011

И ответ ..

$("div:not(.container)").remove(".remove");
...