Frage

Ich habe diese Geige http://jsbin.com/EvIYomiF/4/ und nur um zu bemerken, dass es wichtig ist, dass sich das Javascript in zwei Dateien befindet.

Gut..wie Sie in der Demo sehen können, wird der DOM-Bereich irgendwie überschrieben und ich möchte verstehen, warum.Ich meine, das self = dieser Hack ist sicher eine schlechte Übung, aber ich verstehe nicht, warum er überschrieben wird

Ich finde keine Worte, um das Problem zu beschreiben, das tut mir leid, aber die Geige ist der einzige Weg, den ich gefunden habe, um mein Problem einfach zu erklären.

War es hilfreich?

Lösung

Die ganze Vermutung über this ist irrelevant und jeder hat dich auf die falsche Spur geführt.

Das Problem ist, dass self wurde nicht mit isoliert var es ist also global.Zweiten self überschreibt den ersten.

Einfach machen var self=this lässt alles funktionieren.Was Sie getan haben, ist gängige Praxis, um die Änderung des Kontexts von zu vermeiden this innerhalb des jQuery-Ereignishandlers

DEMO

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top