Nehmen wir an, Sie möchten für jeden Link auf einer Seite einen Klick-Handler anbringen. Die Funktion für diesen Klick-Handler färbt dann *alle anderen* Links in einer anderen Farbe.
var $allLinks = $("a");
$allLinks.click(function() {
$allLinks.not(this).css("color", "red");
});
Sie können die .not()-Funktion verwenden, um Elemente aus einer Menge zu entfernen, daher entfernt das Auffüllendiesenan diese Funktion das aktuelle Element, bevor die Farbe geändert wird.
Bessere Anwendung dafür
Da eine Menge Links auf einer Seite mit diesem Skript dazu führt, dass jQuery jedes der Elemente manipuliert und Dinge im Klassenattribut tut, kann dies ziemlich teuer und langsam werden.
Ein besserer Weg wäre die Verwendung einer gemeinsamen Wrapper-Klasse.
Auf diese Weise berührt jQuery nur den aktuellen Link und die zuvor angeklickten. Deutlich schneller und günstiger auf größeren Seiten und generell gute Praxis.
Der body-class-Teil ist nicht zwingend erforderlich, die Links könnten standardmäßig rot gefärbt werden, sodass nur zwei CSS-Regeln und zwei Zeilen JavaScript innerhalb der Click-Funktion übrig bleiben.
Siehe auch http://krinkle-tools.grizzdesign.nl/other-anchors.html
Ein Teil des Kommentars ist verloren gegangen, siehe den Link
http://krinkle-tools.grizzdesign.nl/other-anchors.html
Für das korrekte JavaScript und CSS