Frage

Ich habe einen solchen Code:

<p>Lorem ipsum<a href=# class="a">link</a><span class="b">Text</span>More lorem ipsum<a href=# class="a">link</a><span class="b">Text 2</span>

Und ich möchte Benutzern auf die Klicken auf die Klicken machen lassen link und in der Lage sein, etwas mit der Spannweite zu tun (lassen Sie es blinken, verstecken, was auch immer). Ich benutze JQuery und das habe ich bisher geführt:

$('.a').click(function() {
    $(this).nextUntil('.a').css('background-color', 'red');
 });

Dies funktioniert, solange ich fleißig über Links vor den Spannweiten und keinen anderen Code im Text bin. Ich bin jedoch nicht zufrieden damit und es muss einen besseren Weg geben. Ich habe auch versucht:

$('.a').click(function() {
    $(this).next('.b').css('background-color', 'red');
 });

Das wählt jedoch alle Klassenspannen aus b, Also nicht gut.

Ich bin neu und ratlos. Ich suche Weisheit.

War es hilfreich?

Lösung

$('a.a').click(function() {
    $(this).next('span.b').css('background-color', 'red');
 });

Sollte gut für Sie funktionieren. Es wird unmittelbar nach Geschwister.

Andere Tipps

Vielleicht könnten Sie das versuchen?

$(".a").click(function() {
    $(this).addClass("something_special");
    $(".something_special + .b").css({backgroundColor: "red"});
    $(this).removeClass("something_special");
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top