Ist dieser Port von Prototype zu JQuery korrekt?

8

Wir haben Code, der ausgeführt wird, wenn der Benutzer für eine bestimmte Zeit im Leerlauf ist. (doStuff setzt einen Countdown zurück)

Vorhandener Code in Prototyp:

%Vor%

Ich möchte es mit diesem JQuery ersetzen:

%Vor%

Es prüft, wenn ich es teste, aber kann jemand bestätigen, dass ich die Dokumenten- / Fensterüberprüfung nicht machen muss, oder dass ich nichts anderes übersehen habe? Danke.

    
blu 09.02.2010, 22:30
quelle

2 Antworten

15

Schließen, dies ist ein kompletter Port (hinzugefügt window ) und der Dokument-bereit-Test wird nicht benötigt:

%Vor%

Sie können ein Array an die jQuery-Funktion übergeben, sodass Ihre Einrichtung für mehr als ein Element gilt. In diesem Fall haben Sie bereits Referenzen auf window und document . So können Sie es in einem Anruf erledigen.

Ich glaube jedoch nicht, dass der ursprüngliche Prototyp-Code benötigt wurde. Zum Beispiel, focus und blur dont 'nicht auf die document anwenden und click , mousemove und keypress wird nicht benötigt auf der window .

Dies könnte mehr sein, was Sie wollen:

%Vor%

DOM Ready wird nicht benötigt : Der DOM Ready-Test wird nicht benötigt, da Sie bereits sofort Zugriff auf document und window haben. Warten auf DOM bereit ist unnötig.

    
Doug Neiner 09.02.2010, 22:34
quelle
1

Dieser Prototyp-Code ist ... nicht optimal, um es gelinde auszudrücken, und nicht aus irgendeinem Grund im Zusammenhang mit Prototype.

Ihre Neuschreibung sieht gut aus, außer dass Sie window fallen gelassen haben. Wenn das Hooking der Ereignisse in window in jQuery nicht möglich ist, ist es in Prototype gültig.

Eine ähnliche Neufassung in Prototype, die ähnliche Annahmen macht (aber einschließlich window ):

%Vor%

... und ich wäre nicht überrascht, wenn ich finde, dass das sogar ausführlicher ist, als es eigentlich sein muss.

    
T.J. Crowder 09.02.2010 22:37
quelle

Tags und Links