Come operare su un determinato elemento durante la sfocatura?
Domanda
Durante la messa a fuoco, possiamo fare qualcosa del tipo:
$('#target').focus(function(){$(this)..});
Perché " questo " è solo quello focalizzato ( $ (this) == $ ('# target')
).
Ma non posso fare lo stesso per " sfocatura " perché $ (this)! = $ ('# target')
.
Come farlo nel modo giusto?
NOTA: nella mia applicazione, non posso assegnare un ID alla destinazione e "#target" qui è solo a scopo illustrativo.
Soluzione
La sfocatura manterrà il contesto come ti aspetteresti:
$("#target").blur(function() {
$(this).text("See? It works!");
});
Altri suggerimenti
var foo = $('target');
foo.focus(function(){foo.....});
La funzione anonima fungerà da chiusura e ricorderà il valore di pippo.
Sono in grado di accedere a 'this' con blur, il seguente codice funziona bene ...
$(".aClass").blur(
function(){
alert($(this).attr("id"));
});
Il Evento / sfocatura attiva l'evento sfocatura di ciascun elemento abbinato e $ (questo) restituisce solo quello che è blured.
jQuery("#target").blur(function() {
console.log( jQuery(this) );
});
Usa Firebug . Aggiunge anche una variabile globale denominata " console " a tutte le pagine Web caricate in Firefox. In questo caso " console.log " scrive un messaggio sulla console.