first - Encontrar incluyéndose con jQuery(como el más cercano pero atravesando)
jquery first child (2)
Aquí un plugin que encontrará el más cercano (incluyéndose a sí mismo):
$.fn.findClosest = function(selector) {
return this.is(selector) ? this.filter(selector).first() : this.find(selector).first();
};
Lo llamas así:
$(''#level-2'').findClosest(''.foo'');
Fiddle: http://jsfiddle.net/W3WCQ/12/
Al igual que .closest()
que permite atravesar el elemento a través de sus antepasados, estoy buscando un método para atravesarlo desde el elemento hasta sus descendientes (a diferencia de .find()
que solo atraviesa los descendientes, excluyendo el elemento sí mismo). Eché un vistazo a la lista de métodos de desplazamiento y no pude encontrar lo que estaba buscando.
¿Hay algún método en jQuery que sea como .closest()
pero para desplazarse hacia abajo?
Simplemente use el método addBack (selector) :
$(this).find(''.myclass'').addBack(''.myclass'').first();
addBack(''.myclass'')
agregará el elemento solo si coincide con el selector