Ich sehe das in verschiedenen Plugins und Codes, aber ich verstehe nicht, was das funktioniert ... In der jQuery-API wird nicht darauf verwiesen!
Ich sehe das in verschiedenen Plugins und Codes, aber ich verstehe nicht, was das funktioniert ... In der jQuery-API wird nicht darauf verwiesen!
Antworten:
applyruft eine Funktion mit einer Reihe von Argumenten auf. Es ist nicht Teil von jQuery, sondern Teil von Javascript. Es wird jedoch in den jQuery-Dokumenten erwähnt:
http://docs.jquery.com/Types#Context.2C_Call_and_Apply
Syntax:
somefunction.apply(thisObj, [argsArray])
Das Obige ruft die Funktion auf somefunction, setzt thisauf thisObjinnerhalb des Funktionsumfangs und übergibt die Argumente von argsArrayals Argumente an die Funktion.
thisgefolgt von einer Reihe einzeln aufgelisteter Argumente anstelle eines Arrays mit den Argumenten .
$.when(object).done(callback);, aber in der Funktion $.when, thiswird auf den ersten Parameter gesetzt, dh null. Wohl sollte man verwenden, $.when.call(null, object).done(callback);weil der zweite Parameter von .applyein Array sein soll
thisder Kontextvariablen zu ändern , wie es Javascript native applykann
Im Wesentlichen ruft apply eine Funktion auf, wobei der Kontext auf das Objekt festgelegt wird, auf das Sie die Funktion anwenden. Dies bedeutet, dass sich die Referenzierung innerhalb der Funktion thisauf dieses Objekt bezieht.
$(this)das zugehörige jQuery-Objekt abrufen und auf jQuery-Methoden zugreifen.