Как выбрать все элементы, которые имеют атрибут title, но не содержатся в элементе с #boo ID?
title
#boo
нравится $("*[title]").each()...
$("*[title]").each()...
но не элементы, которые находятся в #boo:)
$("[title]").not("#boo [title]").each()
и, как примечание, когда вы используете id при получении элемента, это быстрее, если вы не добавите префикс тега элемента.Например, просто используйте #boo вместо div#boo. demo <- попробуйте взглянуть на консоль firebug для сравнения времени. </p>
id
div#boo
$('*:not(#boo) *[title]'); должно работать.
$('*:not(#boo) *[title]');
$('[title]').filter(function(){return $(this).parents('#boo').length === 0;})
Возможны способы снятия шкуры с этой кошкой. Вот еще два:
$('[title]:not(#boo *[title])'); $('[title]').not('#boo *[title]');
Использование filter()
filter()
http://api.jquery.com/filter/
Я должен был сделать это раньше и использовал что-то вроде:
$(":not(#boo) > [title]")