jQuery: i due significati della parola chiave this nel contesto di esecuzione
Alcuni metodi di jQuery creano un nuovo ambito di esecuzione tramite l'invocazione di funzioni di callback. All'interno di queste funzioni
la parola chiave this assume significati diversi a seconda se sia usata o meno con il wrapper $().
this fa sempre riferimento all'elemento o oggetto corrente. La differenza sta nel fatto che se viene usato senza il wrapper
$() fa riferimento ad un oggetto del DOM. In caso contrario fa riferimento ad un oggetto jQuery.
$( "p" ).each(function() {
var $p = $( this ), // oggetto jQuery
p = this, // oggetto DOM
pClass = p.className, // proprietà di un oggetto DOM
pAttrClass = $p.attr( "class" ); // metodo di un oggetto jQuery
});
Come si può notare la differenza è evidente. Bisogna sempre prestare attenzione a non confondere i due significati della parola chiave
this.