Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Programmazione Javascript >> .

Come verificare se il browser ha la messa a fuoco in JavaScript

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 () {

//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; }



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 ;

}

 

Programmazione © www.354353.com