Um ein vereinfachtes Beispiel zu geben, habe ich den folgenden Block wiederholt bekam auf der Seite viele Male (es dynamisch generiert wird):jQuery: Wie komme ich zu einem bestimmten Kind eines Elternteils?
<div class="box">
<div class="something1"></div>
<div class="something2">
<a class="mylink">My link</a>
</div>
</div>
Wenn Sie darauf klicken, kann ich mit dem Mutter der Verbindung erhalten:
$(".mylink").click(function() {
$(this).parents(".box").fadeOut("fast");
});
Allerdings ... Ich muss an die <div class="something1">
dieses bestimmten Elternteils gelangen.
Kann mir jemand im Grunde sagen, wie man sich auf ein höheres Geschwister bezieht, ohne direkt darauf verweisen zu können? Nennen wir es großen Bruder. Ein direkter Verweis auf den Klassennamen des großen Bruders würde dazu führen, dass jede Instanz dieses Elements auf der Seite ausgeblendet wird - was nicht der gewünschte Effekt ist.
Ich habe versucht:
parents(".box .something1") ... no luck.
parents(".box > .something1") ... no luck.
siblings() ... no luck.
jedermann? Vielen Dank.
Anurags Antwort scheint nicht die richtige zu sein - das hat mich sicherlich dazu gebracht, innezuhalten und nachzudenken - aber es zeigt einen eklatanten Tippfehler in Ihrem Code, der Ihren Selektor zum Scheitern bringt. Der Selektor in jQuery ist '.parent()' * not * '.parents()' –
@ricebowl: Falsch. http://api.jquery.com/parents/ – SLaks
@ricebowl ... parent() würde mir div something2 geben, also brauche ich eltern(), um div box zu bekommen. – Tom