Det første er et 'teknologi-check'. Hvis browseren forstår 'document.all', er den mindst IE4.0
2 og 3 gør det samme - nemlig checker, hvad browseren oplyser om sig selv i navigator.userAgent-headeren. Hvis strengen 'MSIE' findes her, er det en IE
Så der er ingen forskel på hvilken af dem jeg bruger, hvis jeg f.eks. ønsker at udelukke samtlige versioner af IE?
Det kunne tænkes at 'document.all' var den mindst sikre betode, da denne i sin simpelhed må kunne foregår andetsteds end i forbindelse med IE. Eller er jeg helt galt på den her?
'window.navigator.userAgent.indexOf("MSIE")' returnerer kun true, hvis det er en IE, så den kan du roligt bruge ;o)
Udtrykket returnerer den plads 'MSIE' står på i strengen ... og '-1', hvis ikke det findes. Derfor kan du frit vælge mellem de to sidste. De gør præcis det samme. /mvh
ns4 = (document.layers)? true:false all = (document.all)? true:false DOM = (document.getElementById)?true:false; opera = (window.navigator.userAgent.indexOf('Opera')!=-1)?true:false; ns6 = (document.getElementById && !document.all)?true:false;
if(ns4){ alert("det her er netscape 4") }else if(ns6){ alert("det her er netscape 6 eller højere") }else if(DOM&&!opera){ alert("det her er IE 5 eller højere") }else if(!DOM&&all){ alert("IE 4"); }else if(all&&DOM){ alert("Opera 5 eller højere"); }
Problemet med denne er at den også påvirker IE, den ved check for Mozilla skal se sådan her ud: (window.navigator.userAgent.indexOf("gecko/") + 14 &&! (window.navigator.userAgent.indexOf("MSIE")>=0))
Men Gecko falder jo også ind og gælder for Netscape... der er nogle konflikt problemer her. Jeg er ude efter en komplet og sikker måde på at detection samtlige store browsere, uden at skulle udelukke den ene eller den anden...
Kan du tilskrive dette script noget?
MOZ = (window.navigator.userAgent.indexOf("gecko/") + 14)?true:false; // Mozilla NS4 = (document.layers)?true:false; // Netscape 4.x NS = (navigator.userAgent.indexOf('Netscape')!=-1)?true:false; // Netscape 5.x IE = (window.navigator.userAgent.indexOf('MSIE')!=-1)?true:false; // Explorer 4.0-6.0 IEMAC = (navigator.platform.indexOf('Mac')!=-1)?true:false; // Explorer MAC OP = (navigator.userAgent.indexOf('Opera')!=-1)?true:false; // Opera (All Versions)
WIDTH = screen.width;
if (NS4 || OP) { location.href='navigation/browser.htm'; } else if (WIDTH < 800) { location.href='navigation/resolution.htm'; } //--> </script>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.