4 Creare contenuti per il web - Andrea Giachetti
4 Creare contenuti per il web - Andrea Giachetti
4 Creare contenuti per il web - Andrea Giachetti
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
94<br />
all'esecuzione del codice la pagina viene modificata: al posto di “Pippo” comparirebbe scritto<br />
“ciao”. Allo stesso modo si possono variare le proprietà di formattazione con apposite funzioni.<br />
Per esempio, possiamo nel codice Javascript collegato a una pagina HTML definire la funzione:<br />
function ChangeFont(n)<br />
{ document.getElementById("id").style.fontSize = n; }<br />
Anche non conoscendo la sintassi del linguaggio in dettaglio, si può intuire che, quando questa<br />
funzione viene eseguita, le dimensioni del carattere nell'elemento identificato dall'identificatore<br />
“id”, vengono cambiate. Analogamente, quindi, esisteranno funzioni che mi <strong>per</strong>mettono di<br />
modificare tutti gli oggetti nella pagina eseguendo un codice opportuno.<br />
Resta da capire come si possa fare eseguire <strong>il</strong> codice in funzione di un'azione dell'utente<br />
sull'interfaccia del browser. La risposta è semplice: mediante <strong>il</strong> Document Object Model del<br />
browser è infatti anche possib<strong>il</strong>e accedere alle azioni o<strong>per</strong>ate sugli oggetti. Ad ogni elemento,<br />
cioè, sono associati “eventi” che possono essere associati all'esecuzione di una funzione<br />
Javascript. Tali eventi sono, <strong>per</strong> esempio, <strong>il</strong> caricamento di una pagina, <strong>il</strong> click e r<strong>il</strong>ascio del<br />
mouse sull'elemento, <strong>il</strong> click semplice del mouse, la sovrapposizione del mouse all'oggetto, la<br />
selezione di parte di testo.<br />
Gli eventi vengono attivati attraverso corrispondenti attributi inseriti nell'elemento HTML. Per<br />
esempio, se viene scritto:<br />
<br />
sezione <br />
le proprietà dell'elemento identificato da vengono variate attraverso <strong>il</strong> movimento del<br />
mouse. Quando <strong>il</strong> cursore è sopra l'elemento (onmouseover) lo sfondo diventa grigio, quando<br />
esce diventa rosso. La variab<strong>il</strong>e this identifica nel linguaggio Javascript l'elemento in cui ci<br />
troviamo (lo specifico elemento div in questo caso).<br />
Ovviamente un'azione su un pulsante può far modificare anche tutti gli altri elementi del<br />
documento, non solo quello ove si verifica l'azione. Si consideri l'esempio seguente:<br />
<br />
<br />
<br />
<br />
In questo caso, l'evento generato da un elemento button, modifica un immagine caricata nella<br />
pagina, selezionato dall'id “<strong>per</strong>sonaggio”, cambiando l'attributo corrispondente all'url della<br />
stessa (provare <strong>per</strong> credere). Anche se son si conoscono in dettaglio i principi della<br />
programmazione, gli esempi mostrati dovrebbero chiarire i concetti base dell'HTML dinamico.