Was ist der beste Weg, um jQuery .change () auszuführen?

8

Ich habe zwei separate Skripts, die im Wesentlichen dasselbe tun. Ich baute sie im Laufe der Zeit auf und entdeckte gerade, dass ich ein paar verschiedene Mittel einsetze, um zum selben Ergebnis zu kommen.

Ich möchte die Best Practices-Methode in beiden Fällen standardisieren und verwenden.

Eine Möglichkeit, ein Änderungsereignis zu testen, ist dies:

%Vor%

Eine andere Möglichkeit, ein Änderungsereignis zu testen, ist dies:

%Vor%

Welcher Weg ist der beste Weg? Was ist der Unterschied zwischen den 2?

Danke, dass Sie mir geholfen haben, das zu verstehen.

    
H. Ferrence 03.04.2012, 14:43
quelle

1 Antwort

16

Vor jQuery 1.7 war change() einfach eine Abkürzung für bind("change") .

Ab 1.7 jedoch war on() eingeführt und wird bevorzugt bind() . Das bedeutet nun, dass change() eine Verknüpfung für on("change") ist, und alle Aufrufe von bind() rufen nun on() intern.

Kurz gesagt, sie machen das Gleiche. Ich finde die explizite Verwendung von on() (oder bind() ) vorzuziehen, aber solange Sie in Ihrer Codebasis konsistent sind, sehe ich keine wirklichen Unterschiede.

Man könnte argumentieren, dass die Verwendung von change() über on("change") "besser" ist, da ein Tippfehler im Wort "change" in erster Instanz einen Parse-Fehler auslösen würde ("undefined ist keine Funktion"), würde es aber tun scheitert still mit on() ... aber offensichtlich würden Ihre Unit Tests das fangen, oder? ;).

    
Matt 03.04.2012, 14:45
quelle

Tags und Links