Sempre più pagine Web stanno incorporando le funzioni JavaScript che girano in loop a intervalli regolari , sia per il ping di un URL per gli aggiornamenti o per fornire una maggiore interattività dell'utente con la pagina . Purtroppo , JavaScript consuma le risorse della macchina del cliente , tra cui Central Processing Unit utilizzo , memoria e larghezza di banda . Con questo in mente , è considerato buona pratica per i programmatori a non tassare tali risorse quando l' utente non ha bisogno di loro . Un modo per farlo è quello di verificare se il browser ( o una scheda specifica all'interno del browser ) è attivo, e attivare /disattivare le funzioni di conseguenza. Istruzioni
1
Creare due funzioni , una per quando il browser è a fuoco , e una per quando la sua attenzione è offuscata :
var onFocus = function () {
< p > //inserire il codice da eseguire quando la finestra ha guadagnato attenzione
}; .
var onBlur = function () {
/code /inserto da eseguire quando il finestra ha perso fuoco
}; .
2
Incorporare funzione di rilevamento . Questo è principalmente per Internet Explorer , ma è meglio usare il rilevamento delle funzionalità piuttosto che il rilevamento del browser perché è più affidabile per verificare direttamente per la funzione che si desidera modificare . Internet Explorer utilizza il document.onfocusin proprietà e document.onfocusout piuttosto che window.onfocus e window.onbur , quindi sarà necessario verificare se vengono definite le proprietà del documento :
se ( document.onfocusin = ! = undefined ) { var
onfocusin = true ;
} else {
onfocusin var = false; }
< br > 3
completare il codice legando gli opportuni eventi di attivazione /sfocatura per le funzioni create nel passo 1 :
se ( onfocusin === true) {
document.onfocusin = onFocus ;
document.onfocusout = onBlur ;
} else {
window.onfocus = onFocus ;
window.onblur = onBlur ;
< p > }