A ROMA, OLTRE IL CODICE C’È L’EMOZIONE
La seconda edizione del Codemotion, l’evento aperto a tutti i linguaggi e tecnologie, si terrà il 23 e 24 marzo 2012 a Roma. Le novità principali del Codemotion 2012 consisteranno in: due giorni di interventi tecnici e doppio evento in contemporanea a...
Ovviamente i modi sono svariati, si può per esempio agire sugli elementi della pagina, in quanto a seconda del browser esistono metodi e attributi differenti per alcuni oggetti:
In questo articolo impariamo a riconoscere il browser dell’utente tramite l’oggetto navigator la cui proprietà userAgent contiente le informazioni che ci servono, riguardanti browser, sistema operativo, ecc.
La stringa che compare è qualcosa di simile “Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.13) Gecko/2009080315 Ubuntu/9.04 (jaunty) Firefox/3.0.13″ il che vi da molte informazioni sul browser che sto usando in questo momento.
Quello che ci interessa capire è fondamentalmente se si tratta di un browser basato su Mozilla, su Opera o su Internet Explorer. Per fare ciò ci sono svariati modi, qui useremo un semplice test:
<button onclick='(/Opera[\/\s](\d+\.\d+)/.test(navigator.userAgent))?alert("Usi Opera"):(/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent))?alert("Usi Mozilla"):(/MSIE (\d+\.\d+);/.test(navigator.userAgent))?alert("Usi internet Explorer"):alert("Non usi ne Opera ne Mozilla ne Internet Explorer, oppure si è verificato un problema :(");'>Prova Qui</button>
In Javascript è possibile catturare l’evento di pressione di un tasto da tastiera con il comando document.onkeydown a cui va associata la funzione da eseguire in caso venga premuto un tasto da tastiera:
1
document.onkeydown= keyDown;
In questo caso viene eseguita la funzione keyDown alla pressione di un tasto, per cui andiamo ora a definire questa funzione:
1
function keyDown(e){
2
if(!ie){var keyCode=e.which;}
3
if(ie){var keyCode=event.keyCode;}
4
if(keyCode==39){window.location=URLsuccessivo;}
5
if(keyCode==37){window.location=URLprecedente;}
6
}
In questo esempio vi è il riconoscimento dei tasti relativi alla freccia destra ed alla freccia sinistra. Quindi questo serve per una navigazione su più pagine in sequenza, con la pressione della freccia destra passo all’url successivo e con la freccia sinistra all’url precedente. Ovviamente vanno dichiarate le due variabili URLsuccessivo e URLprecedente oppure sostituite con i rispettivi URL in stringa.