Si noti che questo si riferisce agli eventi di messa a fuoco e sfocatura su una finestra, non sui campi modulo.window.onfocus non attivato in IE7, incoerente in Opera
che sto caricando un documento in una finestra pop-up, e include il seguente codice:
<script type="text/javascript">
window.onblur = function(){ document.title="BLURRED"; }
window.onfocus= function(){ document.title="FOCUSED"; }
</script>
Queste funzioni sono temporanee, per il test. Speravo di usare questi eventi per impostare una bandiera che indica lo stato della finestra; Sto facendo un'app di chat e, se i messaggi arrivano quando è ridotto a icona, farò delle modifiche al titolo che attirino l'attenzione. Se non si annullano quando la finestra viene messa a fuoco, però, saranno semplicemente noiosi.
Onload, ho anche messo a fuoco in una textarea. (Non sono sicuro se ciò faccia differenza.)
IE7 (Non ho un'altra versione a portata di mano) sembra riconoscere lo window.onblur
ma non lo window.onfocus
. Opera 10 è semplicemente decisamente strano.
Ecco cosa succede nei browser che ho. Io lancio la finestra pop-up cliccando sul link nel genitore, quindi passare attraverso diverse minimizzare-ripristinare i cicli facendo clic sul pulsante del popup sul simbolo (Windows XP) barra delle applicazioni:
Safari 4:
- finestra aperta: Il documento si apre con titolo originale
- Ridurre al minimo: titolo passa a "VAGO"
- Restore: titolo passa a "focalizzata"
Questo è quello che mi aspettavo che accadesse.
Firefox 3.5:
- Finestra aperta: Il documento si apre con il titolo originale, poi cambia a "focalizzata"
- Ridurre al minimo: Titolo passa a "VAGO"
- Restore: Titolo modifiche " MESSA A FUOCO "
L'onload di onfocus è un po 'una sorpresa, ma non è un problema.
IE7:
- Finestra aperta: Il documento si apre con titolo originale
- Minimizzare: Titolo passa a "VAGO"
- Restore: Titolo non cambia, non importa quante volte ho Toggle
Che cosa è successo a onfocus?
Opera 10.5
- Finestra aperta: Il documento si apre con il titolo originale, ma in un'altra scheda, non pop-up
volte ...
- Ridotta: Titolo cambia in "VAGO"
- Restore: Titolo passa a "focalizzata"
A volte ...
- Minimizzare: Titolo passa a "VAGO", quindi "focalizzata"
- Restore: Titolo non cambia
Okay, questo è semplicemente strano ...
Sono aperto ad altri approcci, ma mi piacerebbe davvero capire cosa sta succedendo qui, in semplice vecchio Javascript - quindi per favore non dare una risposta jQuery a meno che non ci sia davvero un altro modo per aggirare questo.
Grazie!
Che cos'è event.target quando la scheda Opera è ridotta a icona e il titolo cambia ancora in "focalizzato"? – hallvors
Provato questo: http://jsbin.com/omeye3 e sembra funzionare bene per me (alcune build di anteprima di Opera 10.70). Potresti creare una piccola demo che mostri il problema per te? – hallvors
Nel tuo test jsbin è presente un comportamento errato nella versione 9.20 Build 8771 e nella versione 10.62 Build 3500. –