Avatar billede 7th Praktikant
18. august 2001 - 06:24 Der er 3 kommentarer og
1 løsning

Browser Type & Version.

Jeg leder efter et script der checker ens browser type og version, for derefter at redirecte til den rigtige side. Har kigget på builder.dk og i denne kategori, men mangler dette...

If >= Microsoft Internet Explorer 5.5 SP1
// go to index1.html

If <= Microsoft Internet Explorer 5.5 SP1
// go to index2.html

If >= Netscape 6.1
// go to index3.html

If <= Netscape 6.1
// go to index4.html

If >= Opera 1
// go to index5.html

If other browsers
// go to index6.html
Avatar billede limemedia Nybegynder
18. august 2001 - 06:28 #1
Her er noget du kan lege med

<SCRIPT LANGUAGE=\"JavaScript\" TYPE=\"text/javascript\">
<!--
    function OBJbrowser() {
        this.agent = navigator.userAgent.toLowerCase();
        this.version = parseInt(navigator.appVersion);
        this.opera = (this.agent.indexOf(\"opera\") != -1);
        this.opera4 = (this.agent.indexOf(\"opera 4\") != -1);
        this.opera5 = (this.agent.indexOf(\"opera 5\") != -1);
        this.webtv = (this.agent.indexOf(\"webtv\") != -1);
        this.ns = (navigator.appName == \"Netscape\" && !this.webtv);
        this.ie = (navigator.appName == \"Microsoft Internet Explorer\" && !this.opera && !this.webtv);
        this.ns4 = (this.ns && this.version == 4);
        this.mozilla = (this.ns && this.version == 5);
        this.ie4 = (this.ie && this.agent.indexOf(\'msie 4\') != -1);
        this.ie5 = (this.ie && this.agent.indexOf(\'msie 5\') != -1);
        this.ie6 = (this.ie && this.agent.indexOf(\'msie 6\') != -1);
        this.mac = (this.agent.indexOf(\"mac\") != -1);
        this.win = (this.agent.indexOf(\"win\") != -1 || this.agent.indexOf(\"16bit\") != -1);
        this.linux = (this.agent.indexOf(\"inux\") != -1);
        if(this.win) {
            this.platform=\'win\';
        } else if(this.mac) {
            this.platform=\'mac\';
        } else if(this.linux) {
            this.platform=\'linux\';
        } else {
            this.platform=\'unknown\';
        }
        this.valid_browser = (this.version>=4 && (this.ie || this.ns));
    }
    browserobj = new OBJbrowser();
   
    if (browserobj.ns) document.write(\'<LINK REL=\"STYLESHEET\" TYPE=\"text/css\" HREF=\"css/nn.css\">\');
    else document.write(\'<LINK REL=\"STYLESHEET\" TYPE=\"text/css\" HREF=\"css/ie.css\">\');
//-->
</SCRIPT>
Avatar billede 7th Praktikant
18. august 2001 - 17:09 #2
Kan se at jeg har udtrykt mig forkert, men det var også tidligt på morgenen ;)

Mente ikke dele af et script...
Javascript har aldrig været min stærke side, og forstår 0 af overstående. Men så vidt jeg kan se har du skrevet en masse eksempler for check af diverse browsere. Kan ikke rigtig gennemskue om der også checkes for version med et cifre.

Kan du ikke lige give mig et eksempel på hvordan man checker for og får redirected til den rigtige side for mine to første kriterier.
Avatar billede frida Nybegynder
19. august 2001 - 18:01 #3
her er måske en lidt mere overskuelig en - skal sidde i head

<script language=\"JavaScript\">
<!--

function browserName() {
  // IE
  if (navigator.appName == \"Microsoft Internet Explorer\")
    return 1;

  // Netscape
  if (navigator.appName == \"Netscape\")
    return 2;

  //Opera

if(navigator.appName==\"Opera\")
  return 3;


// Andre browsere
  return 0;
}

function browserVersion() {
  // Hvilken version
  return parseFloat(navigator.appVersion)
}

var intName = browserName();
var intVersion = browserVersion();

if ((intName == 0)){
  // Hverken IE eller Netscape eller Opera
  location.href=\'ingen_af_delene.html?1\' //
}


  if ((intName == 1) && (intVersion >= 5.5)) {
  //IE 5.5 eller bedre
location.href=\'IE.html?1\'

}

else if ((intName == 2) && (intVersion >= 6.1)) {
// NS 6.1 eller bedre
    location.href=\'NS.html?1\'

} else if ((intName == 1) && (intVersion <5.5)) {
// IE før version 5.5

location.href=\'navn.html?1\'

} else if ((intName == 2) && (intVersion < 6.1)) {
// NS før version 6
location.href=\'navn.html?1\'

else if ((intName == 3) && (intVersion == 1)) {
  //Opera 1
location.href=\'opera1.html?1\'

}



}


// -->
</script>

</head>
Avatar billede 7th Praktikant
20. august 2001 - 07:10 #4
Det var også sådan jeg havde gjort i første omgang, men Opera er en tricky one. Den opfører sig som Explorer, og hvis man ikke absolut sætter den til at være Opera, så kan den ikke udelukkes ved denne metode eller objekt metoden. Desuden mener jeg hellere ikke man kan skrive med en decimal i den kode du viser her. Det kræver så vidt jeg mener en parameter mere...

Men jeg nøjes med det her, og dykker rundt efter resten...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester