Avatar billede tdaugaard Nybegynder
04. oktober 2001 - 00:13 Der er 11 kommentarer og
1 løsning

navigator.appVersion problem med IE 6

java script:alert(navigator.appVersion);

giver

\"4.0 (compatible; MSIE 6.0; Windows NT 5.0)\"

dvs. en parseInt() på den giver 4 .. men jeg skal jo have 6 istedet .. hvordan klarer jeg lige den ? Og dens kal også være kompatibel med ældre IE\'ere som f.eks. 4 og 5.
Avatar billede nute Nybegynder
04. oktober 2001 - 00:15 #1
hmm....jeg kjenner ikke *helt* problemstillingen, meeeen....

kan du ikke bare lage en substring som starter ved MSIE og ender ved det første ; og deretter parseInt\'er du bare substringen ?
Avatar billede kim_bille Nybegynder
04. oktober 2001 - 00:16 #2
skal du bruge appVersion til noget, du ikke kan checke med fx:
if (document.getElementById) newer=true;  // ie5.0+ og ns6
if (document.all && !document.getElementById) ie4=true; //ie4
if (document.layers) ns4=true; //ns4
Avatar billede tdaugaard Nybegynder
04. oktober 2001 - 00:16 #3
nute:> Problemet er, at jeg ikke ved hvordan det så vil virke i f.eks. IE 4.0 eller 5.x
Avatar billede tdaugaard Nybegynder
04. oktober 2001 - 00:17 #4
kim_bille:> Det jeg skal vide er bare om IE er >5 (5.5, 6.0 osv)
Om det er NS er jeg ligeglad med.
Avatar billede nute Nybegynder
04. oktober 2001 - 00:18 #5
tdaugaard >> hehe...hvis ikke *du* vet hvordan tingene vil fungere, hvordan skal så *vi* kunne vite det

;-)
Avatar billede tdaugaard Nybegynder
04. oktober 2001 - 00:21 #6
nute:> You\'re the experts *GG* hæ hæ ..
Avatar billede kim_bille Nybegynder
04. oktober 2001 - 00:23 #7
if ((navigator.appName.indexOf(\'Microsoft\') > -1) && (document.getElementById) ie5=true;
Avatar billede nute Nybegynder
04. oktober 2001 - 00:24 #8
tdaugaard >> jeg kan opplyse om at min IE5 returnerer

4.0 (compatible; MSIE 5.01; Windows NT 5.0)

hvis det kan hjelpe deg *litt* på veien

/nute

Avatar billede tdaugaard Nybegynder
04. oktober 2001 - 00:27 #9
kim_bille:> Lige det jeg skulle bruge :-)
Tak :-)
Avatar billede kim_bille Nybegynder
04. oktober 2001 - 00:30 #10
Iorden du!
Avatar billede jakoba Nybegynder
04. oktober 2001 - 00:49 #11
\'MSIE 6.0\' er et fast holdepunkt du kan bruge i (vistnok) alle IE browsere.

var tmp = navigator.appVersion.indexOf(\"MSIE\");
var IEver = parseFloat( navigator.appVersion.substring(tmp+5,tmp+8);

alert( IEver );  // versionsnummer med 1 decimal.

mvh JakobA
Avatar billede olebole Juniormester
04. oktober 2001 - 01:11 #12
<ole>
if (document.all && document.getElementById) ie5=true; //ie5
...simple as that  :)

Lad mig lige prøve at forklare:
Der er to hoved måder at spørge på. Man kunne kalde dem for \'navne-check\' og \'teknologi-check\'.

Ved navne checket spørger du browseren: \"Hvad kalder du dig?\"...altså, hvad returnerer browseren, hvis man spørger til \'navigator.appName\'. Så kan man lede efter en del-streng, der er unik for den browser, man søger efter. Findes den, er det den browser, man leder efter - ellers ikke.

Ved teknologi checket, spørger man: \"Hvad siger du, hvis jeg siger \'hammer og søm\'?\" Hvis den smiler og nikker (returnerer true), så er det nok en tømrer. Havde jeg spurgt om \'mørtel og murerske\', havde det været en murer.
Altså, man spørger om noget, man ved, *kun* den browser, man leder efter, forstår: \'document.all\' forstår alle IE\'ere fra 4.0 og op - og *kun* IE\'ere. \'document.layers\' forstår *kun* NS4\'ere...osv.

Teknologi checket er ikke noget standardiseret check. Det er noget, nogle kvikke kodeho\'der selv har fundet på, på et eller andet tidspunkt.
Det betyder også, at du er velkommen til at lave dit eget. Det gjorde jeg selv for nyligt, da jeg skulle kunne genkende IE5.5 og højere. Jeg gik ind på MS\' dokumentations sider over DHTML-metoder og fandt ud af, at metoden \'window.createPopup\' blev introduceret i IE5.5. Altså kan jeg nu spørge:
  var ie55 = (window.createPopup)? true : false;
På samme måde kan du selv finde en metode, der først lige er blevet introduceret i IE6.0 og spørge, om browseren forstår den. Så kan du altid genkende en IE6\'er eller derover - når de engang kommer  :)
Du kan endvidere altid kombinere to eller flere teknologi check, som kim_bille gjorde med IE4 - og som jeg selv gjorde med IE5+, ovenfor.

Jeg ved godt, spørgsmålet er blevet besvaret, men håber at kunne afmystificere emnet lidt med dette  :)
/mvh
</bole>
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