Autor | Zpráva | ||
---|---|---|---|
vacjos Profil * |
#1 · Zasláno: 18. 3. 2009, 17:23:46
Ahoj,
jak javascriptem detekovat konkrétní verzi prohlížeče, potřebuji hlavně všechny IE od verze 5 a výš, i busoucí osmičku, tzn. např IE5.5, iE6, IE7, IE8? Dík |
||
Joker Profil |
#2 · Zasláno: 18. 3. 2009, 17:27:09
Šlo by to vytáhnout z navigator.appVersion
|
||
Plaváček Profil |
#3 · Zasláno: 18. 3. 2009, 18:15:58
|
||
Bubák Profil |
#4 · Zasláno: 19. 3. 2009, 01:29:50
Plaváček
Propracovaná věcička, spolehlivě udělaná detekce Opery. K dokonalosti chybí snad jen tohle: http://zdrojak.root.cz/zpravicky/nejkratsi-mozna-detekce-ie-ma-pouhych-9-znaku/ |
||
vacjos Profil * |
#5 · Zasláno: 19. 3. 2009, 09:10:47
Ahoj, našel jsem na netu (http://ajaxian.com/archives/detecting-ie7-in-javascript) toto:
var Browser=new( var w=window; var d=w.document; var ua=navigator.userAgent.toLowerCase(); this.ie = w.VBArray; this.ie5=(this.ie && (!d.createEventObject || !d.namespaces)); this.ie55=(this.ie && !d.implementation); this.ie6=(this.ie && d.implementation); this.ie7 = (this.ie && w.XMLHttpRequest); this.opera = w.opera; this.gecko = (w.netscape && !this. opera); this.khtml=(ua.indexOf("safari")+1 || ua.indexOf("konqueror")+1); )() ale nevim, jak to použít. Pro moji potřebu potřebuji něco jako: if ( ""IE5"" ){document.getElementById('pozice').style.left = 0+'%';} if ( ""IE55"" ){document.getElementById('pozice').style.left = 5+'%';} if ( ""IE6"" ){document.getElementById('pozice').style.left = 10+'%';} if ( ""IE7"" ){document.getElementById('pozice').style.left = 15+'%';} if ( ""IE8"" ){document.getElementById('pozice').style.left = 20+'%';} Jakým zápisem v podmínce if (místo např. ""IE5"") to napojit na níže uvedenou funkci? Dík |
||
vacjos Profil * |
#6 · Zasláno: 19. 3. 2009, 11:15:46
CO říkáte na toto amatérské řešení:
<html> <head> <script language = javascript> var agt=navigator.userAgent.toLowerCase(); var is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1)) ? true : false; var is_ie5 = (is_ie && (!window.document.createEventObject || !window.document.namespaces)) ? true : false; var is_ie55 = (is_ie && !window.document.implementation) ? true : false; var is_ie6 = (is_ie && window.document.implementation && agt.indexOf("msie 7.0; windows nt 5.1; gtb5") == -1 && agt.indexOf("trident/4.0") == -1) ? true : false; var is_ie7 = (agt.indexOf("msie 7.0; windows nt 5.1; gtb5") == 25) ? true : false; var is_ie8 = (agt.indexOf("trident/4.0") == 51); </script> </head> <body> <script> document.write('agt: '+agt+'<br>'); document.write('ie: '+is_ie+'<br>'); document.write('ie5: '+is_ie5+'<br>'); document.write('ie5.5: '+is_ie55+'<br>'); document.write('ie6: '+is_ie6+'<br>'); document.write('ie7: '+is_ie7+'<br>'); document.write('ie8: '+is_ie8+'<br>'); </script> </body> </html> |
||
Bubák Profil |
#7 · Zasláno: 19. 3. 2009, 11:44:56
Nechceš blíže vyzradit, o co se pokoušíš? Začínám mít dojem, že nepotřebuješ javascript, ale tohle:
http://css.interval.cz/clanky/css-zvlast-pro-msie-a-ostatni-prohlizece/ Ale rozšířené podle jednotlivých verzí IE: http://interval.cz/clanky/podminene-komentare-v-internet-exploreru/ |
||
vacjos Profil * |
Už jsem to psal:
potřebuji přesně toto, změnit javascriptem hodnotu left o x %, pro každý z IE jinak if ( ""IE5"" ){document.getElementById('pozice').style.left = 0+'%';} if ( ""IE55"" ){document.getElementById('pozice').style.left = 5+'%';} if ( ""IE6"" ){document.getElementById('pozice').style.left = 10+'%';} if ( ""IE7"" ){document.getElementById('pozice').style.left = 15+'%';} if ( ""IE8"" ){document.getElementById('pozice').style.left = 20+'%';} |
||
Chamurappi Profil |
#9 · Zasláno: 19. 3. 2009, 13:23:31
Reaguji na vacjos:
Na změnu vzhledu stylem používej třídy a nejde-li to jinak, použij hacky (třeba ten podmíněný komentář). Detekce prohlížeče ve skriptu bývá obvykle zbytečná. Opravdu nechceš blíže vyzradit, o co se pokoušíš? Nepřipadá mi moc pravděpodobné, že bys chtěl nastavovat vlastnost left pro každou verzi Exploreru jinak. |
||
vacjos Profil * |
#10 · Zasláno: 19. 3. 2009, 14:20:04
Nevěříte, věřte:-)
Viz. http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=7&topic=91795 Jen tam potřebuju udělat tu úpravu pro chybné zobrazení v IE8, tzn. zvětšit pro IE8 příslušné divy na nové rozměry. |
||
Časová prodleva: 16 let
|
0