2010-11-18 8 views
3

Je suis en quelque chose comme ça pour sélectionner tous les éléments div dans DOM (ce qui est bon pour moi):sélectionner tous les éléments div dans DOM après un élément?

var $mySelection=$("#wrapper").find('div').not("#main-content, #etc") 

Comment pourrais-je sélectionner tous les éléments div dans les DOM après un certain div au lieu?

+0

Tous les 'divs ', y compris ceux imbriqués? Ou juste ceux qui sont frères et soeurs du point de départ? – user113716

Répondre

2

Si vous voulez vraiment dire tous<div> éléments dans les DOM après un point de départ, vous devez d'abord trouver dans les nichées de tous ses prochains frères et sœurs, vous Je devrais obtenir les frères et sœurs suivants qui sont <div> éléments.

var divs = $('#wrapper').nextAll().find('div'); 
divs = divs.add('#wrapper ~ div'); 
3
$('div#id').nextAll(selector); 

.nextAll()

Hope this helps.

+2

Ceci est faux, car il ne regarde que les frères et sœurs suivants de l'élément. Mais que se passe-t-il si le div qu'il veut est un frère suivant d'un élément ** parent ** du div référencé? – ErikE

0

Vous pouvez utiliser le next siblings selector

$('div#wrapper ~ div') 

Je remarque aussi dans votre exemple, vous avez .not("#main-content, #etc"). Je crois que vous essayez d'exclure ces frères et sœurs. Si oui c'est un moyen facile en utilisant le not selector

$('div#wrapper ~ div:not(#main-content, #etc)') 
+0

$ ('div # wrapper ~ div: non (# main-content, #etc)') // PARFAIT !!! – Dee

Questions connexes