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.
Schließen, dies ist ein kompletter Port (hinzugefügt window
) und der Dokument-bereit-Test wird nicht benötigt:
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.
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
):
... und ich wäre nicht überrascht, wenn ich finde, dass das sogar ausführlicher ist, als es eigentlich sein muss.
Tags und Links javascript jquery prototypejs