Buono sconto 4% su Toner e Cartucce agli utenti AZpoint. SU Iomiricarico.it!!
|
Si ringrazia Matteo Gentile per la concessione del materiale pubblicato in questo articolo.
|
Spesso per creare una pagina può essere utile conoscere la risoluzione video
dei nostri visitatori, in modo (ad esempio) di modificare le larghezze di alcue
tabelle. Per fare ciò bisogna andare a interrogare il browser dell'utente con
degli script lato client in Javascript. Purtroppo però i vari browser nelle
varie versioni utlizzano delle variabili diverse. Noi vedremo in questo
esempio il codice per ricavare la risoluzione video dai browser più diffusi, e
cioè:
- Internet Explorer 4 e successive versioni
- Internet Explorer 3
- Netscape 4
- Netscape 3
L'esempio riconosce il browser andando a leggere la ServerVariable
"HTTP_USER_AGENT". In seguito il nome del browser viene trasformato in
minuscolo (grazie alla funzione LCase) per
semplificare i confronti. Grazie alla stringa recuperata riconosco il browser
e la versione (grazie alla funzione Instr). Poi
lo script legge la risoluzione video e la scrive in una Message
Box. Le varie risoluzioni sono poi state leggermente "aggiustate" per
avere i numeri classici che conosciamo. Infatti, non prende proprio la
risoluzione video, ma la grandezza della finestra del browser. Se il browser non
è a pieno schermo si ottengono dei numeri minori. Ecco il codice
dell'esempio:
<% A = LCase(Request.ServerVariables("HTTP_USER_AGENT")) if
instr(A,"msie 5")>0 or instr(A,"msie 4")>0 or
instr(A,"zilla/4")>0 then
%> <script language="JavaScript"> var w =
document.body.clientWidth; var h = document.body.clientHeight; w=w+21
h=h+199 alert(w + " * " + h) </script> <% elseif
instr(A,"msie 3")>0 then a = request("http_ua_pixels") if
instr(a,"x")>0 then a = split(a,"x") w=clng(a(0))+21 end if
if instr(b,"y")>0 then b = split(b,"y") h=clng(b(0))+199 end
if alert(w + " * " + h) elseif instr(A,"zilla/3")>0 then %>
<script language="javascript"> var
Sizer=java.awt.Toolkit.getDefaultToolkit(); var
ScrSize=Sizer.getScreenSize(); var ScrW=ScrSize.width; var
ScrH=ScrSize.heigth; w=ScrW+21 h=ScrH+199 alert (w + " * " + h)
</script> <% else alert("Risoluzione non trovata")
end if %>
|