8 Stimmen

jquery: closest('h3') selector?

Ich habe:

<ul class="rating">
    <h3>Like this</h3>
    <li class="rating-number">
        <div id="iLikeThis" class="iLikeThis">
            <span class="counter">2</span>
        </div>
    </li>
</ul>

Dies ist mein Jquery-Code

$('.iLikeThis .counter').each(function() {
        $(this).parent().parent().parent().children('h3').text('You like this');
        $(this).parent().addClass('like');
});

Gibt es eine bessere Möglichkeit, das nächstgelegene h3-Element auszuwählen? Es funktioniert zwar mit 3-fach parent(), aber nicht mit closest('h3).

Warum?

16voto

BoltClock Punkte 660640

Als h3 ist nicht ein Elternteil von .counter Das wird nicht funktionieren. Verwenden Sie .closest() auf .rating stattdessen und finden seine h3 :

$(this).closest('.rating').children('h3').text('You like this');

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X