Si dovrebbe estendere jQuery per aggiungere il metodo ad esso. Si può fare in questo modo:
$.fn.myAlert = function() {
alert("OK");
};
Se si vuole essere in grado di catena di altri metodi di jQuery Dopo di che, è necessario tornare this
dal plugin.
Ecco uno working example.
Se sei interessato a ciò che effettivamente fa in modo un po 'più dettagliato, continua a leggere. $.fn
è semplicemente un alias per $.prototype
. Aggiungendo una proprietà allo prototype
, si stanno effettivamente estendendo tutte le istanze di jQuery.
Quando si chiama $
, jQuery crea internamente un'istanza (non è necessario creare manualmente un'istanza, ad es. Con l'operatore new
). Dal momento che hai esteso $.prototype
, tutte le istanze ora avranno accesso al tuo nuovo metodo.
Se si utilizza il codice esattamente come indicato sopra (senza la dichiarazione return
) non sarà possibile associare ulteriori chiamate ai metodi jQuery. Restituendo l'istanza dal metodo, le chiamate saranno chainable:
$.fn.myAlert = function() {
alert("OK");
return this;
};
Si noti che all'interno del metodo, this
fa riferimento a un'istanza di jQuery, quindi non c'è alcun bisogno di avvolgerla in una chiamata inutile $
.
fonte
2013-01-11 12:43:30
Per aggiungere una. il metodo myAlert() su un oggetto jQuery consulta http://docs.jquery.com/Plugins/Authoring –