Je vois cela dans différents plugins et codes, mais je ne comprends pas ce que fait cette fonction ... Dans l'api jQuery n'est pas référencé!
Je vois cela dans différents plugins et codes, mais je ne comprends pas ce que fait cette fonction ... Dans l'api jQuery n'est pas référencé!
Réponses:
apply
appelle une fonction avec un ensemble d'arguments. Cela ne fait pas partie de jQuery, cela fait partie du noyau Javascript. Cependant, il est mentionné dans la documentation jQuery:
http://docs.jquery.com/Types#Context.2C_Call_and_Apply
Syntaxe:
somefunction.apply(thisObj, [argsArray])
Les appels au- dessus de la fonction somefunction
, la mise this
à l' thisObj
intérieur du périmètre de la fonction, et en passant dans les arguments de argsArray
que les arguments de la fonction.
this
, mais elle est suivie d'une série d'arguments listés individuellement au lieu d'un tableau contenant les arguments .
$.when(object).done(callback);
, mais dans la fonction $.when
, this
est défini sur le premier paramètre, à savoir null
. On devrait sans doute utiliser $.when.call(null, object).done(callback);
parce que le deuxième paramètre de .apply
est censé être un tableau
this
la variable de contexte, comme le natif de Javascript apply
peut le faire
Essentiellement, apply appellera une fonction dont le contexte est défini sur l'objet auquel vous appliquez la fonction. Cela signifie que dans la fonction, le référencement this
fera référence à cet objet.
$(this)
pour obtenir l'objet jQuery associé et avoir accès aux méthodes jQuery.