Jak zjistit rozlišení obrazovky uživatele?
Webdesigneři se kromě potíží s kompatibilitou
jednotlivých prohlížečů potýkají i s dalšími problémy. K nim patří i
optimalizace stránek podle rozlišení obrazovek. Většinou je
doporučováno vytvářet stránky pro rozlišení 800x600 pixelů, u
informačních serverů dokonce i pro 640x480 pixelů. Existuje však i
jiná možnost: využít Javascriptu a pomocí něj detekovat základní
vlastnosti obrazovky.
K tomuto účelu slouží objekt screen, který byl
implementován do čtvrtých verzí prohlížečů MS Internet Explorer a
Netscape Navigator. Objekt screen má řadu vlastností, opět se však
budu věnovat jen těm, které využijete u obou konkurenčních
prohlížečů:
height - výška obrazovky (v pixelech)
width - šířka obrazovky
availHeight - výška pracovní plochy - tj. plochy
obrazovky, která je k dispozici (např. ve Windows se odečítá výška
startovního panelu)
availWidth - šířka pracovní plochy
colorDepth - nastavení barevné hloubky (v bitech na
pixelech). Např. při nastavení 256 barev je vrácena hodnota 8, při
16 tisíci barvách hodnota 16 atd.
Jak lze použít jednotlivých vlastností objektu screen Vám ukáže
následující
ukázka, která zobrazí vlastnosti obrazovky. Při použití tohoto
objektu však nesmíte zapomenout, že ho starší prohlížeče nepodporují
a proto jim podsunout náhradní řešení, stejně jako pro případy, kdy
browsery nepodporují JavaScript vůbec. Zdrojový kód našeho příkladu
vypadá následovně:
<script
language="JavaScript"> <!-- // zjistí typ
prohlížeče a nabídne jim řešení var browser =
navigator.appName var verze =
parseInt(navigator.appVersion) if ((browser ==
"Microsoft Internet Explorer" & verze >= 4) |
(browser == "Netscape" & verze >= 4)){ //zjistí
vlastnosti obrazovky sirka = screen.width vyska =
screen.height asirka = screen.availWidth avyska =
screen.availHeight color =
screen.colorDepth //zobrazení
údajů document.write("Rozlišení obrazovky: " + sirka
+ " x " + vyska + "<br>") document.write
("Pracovní plocha: " + asirka + " x " + avyska +
"<br>") document.write ("Nastavení barev: " +
color + " bit/pixel") } else document.write("Tyto
vlastnosti nejsou Vaším prohlížečem podporovány") //
--> </script> <noscript> Váš
prohlížeč nepodporuje
JavaScript </noscript>
| |
Závěr
Objekt screen nabízí další možnosti pro webdesignery, hlavně v
případech graficky náročných webů, kde hraje rozlišení obrazovky
velkou roli. Přináší však příležitost i pro statistické servery,
jako jsou TopList a Navrcholu. Pánové, pročpak nerozšířit statistiky
i o tyto údaje?
Martin Komárek - Další články
autora

|