In questo caso è stato sicuramente necessario distinguere diversi comportamenti in base alle diverse funzionalità attive nel browser.
Ecco un esempio di distinzione di tali funzionalità e versioni del browser.
// recupero le informazioni del browser
var AgntUsr=navigator.userAgent.toLowerCase();
// controllo se il browser utilizza i dom
var DomYes=document.getElementById?1:0;
// controllo se il browser è firefox
var NavYes=AgntUsr.indexOf('mozilla')!=-1&&AgntUsr.indexOf('compatible')==-1?1:0;
// controllo se il browser è explorer
var ExpYes=AgntUsr.indexOf('msie')!=-1?1:0;
// controllo se il browser è opera
var Opr=AgntUsr.indexOf('opera')!=-1?1:0;
// controllo se si tratta di una versione di opera maggiore o uguale alle 6
var Opr6orless=window.opera && navigator.userAgent.search(/opera.[1-6]/i)!=-1 //DynamicDrive.com added code
// controllo se viene utilizzato il modello dom di firefox
var DomNav=DomYes&&NavYes?1:0;
// controllo se viene utilizzato il modello dom di explorer
var DomExp=DomYes&&ExpYes?1:0;
// controllo se si utilizza una versione di firefox che non utilizza i dom
var Nav4=NavYes&&!DomYes&&document.layers?1:0;
// controllo se si utilizza una versione di exlorer che non utilizza i dom
var Exp4=ExpYes&&!DomYes&&document.all?1:0;
// controllo se la versione di explorer è la 7
var ie7 = ExpYes&&typeof document.body.style.maxHeight != "undefined"?1:0;
// controllo se la versione di explorer è la 6
var ie6 = ExpYes&&!ie7?1:0;
Naturalmente chi volesse segnalare altri generi di controlli lo faccia e questi verranno aggiunti.
Nessun commento:
Posta un commento