Sie können dies beide Funktionen in 1:
verwenden %Vor%Siehe toggleClass und Live Funktion
.toggleClass (Klassenname) className Ein oder mehrere Klassennamen (durch Leerzeichen getrennt), die für jedes Element in der übereinstimmenden Gruppe umgeschaltet werden sollen.
Bearbeiten Sie für neue jQuery-Versionen 1.6.4 +
Da die Funktion live
nicht mehr existiert, hier ein Ersatz:
Das Problem ist, dass jQuery funktioniert, indem es Elemente auswählt (das macht $('.follow_link')
) und dann einen Event-Handler an diese -Elemente bindet (das ist .click*function(){
). Es spielt keine Rolle, wenn sich die Klasse ändert.
Javascript hat eine Funktion namens Event-Bubbling. Dies bedeutet, dass Vorfahrenelemente über Ereignisse auf ihren Nachkommen benachrichtigt werden. Dies bedeutet, dass Sie Selektoren testen können, wenn das Ereignis eintritt, anstatt auf Dokument bereit.
jQuery macht das mit der Funktion on
einfach:
Beachten Sie, dass diese Funktion in jQuery 1.7 eingeführt wurde. Um Kompatibilität mit früheren Versionen zu gewährleisten, verwenden Sie delegate
.
Hinweis: Ich hatte gerade dieses Problem, selbst wenn die Funktion on()
immer noch das Problem in JQuery 1.10,
Eigentlich habe ich das Problem gelöst, indem ich ersetzt habe:
%Vor%Nach
%Vor%Tags und Links javascript jquery