2013-12-14 3 views
1

Это дает пустой вывод, потому что console.log никогда не вызывается. Как я могу заставить jQuery найти все элементы, даже элементы верхнего уровня?jQuery - найти в том числе self

$("<div attr></div><div></div>") 
     .andSelf() 
     .find('[attr]') 
     .each(function (index, el) {console.log(el);}); 

ответ

2

Вы можете использовать поиск, чтобы найти потомков элементов с указанными свойствами, используя .find('[attr]') затем добавить обратно корневые элементы, соответствующие фильтр, используя .addBack('[attr]')

$("<div attr></div><div></div>") 
    .find('[attr]') 
    .addBack('[attr]') 
    .each(function (index, el) { 
    console.log(el); 
}); 

Демо: Fiddle

+0

ти, но найти не должен возвращать ничего, я не понимаю, почему эта находка должна быть там – Krab

+0

ok я понимаю сейчас – Krab

Смежные вопросы