12.12.2012 Views

4 Creare contenuti per il web - Andrea Giachetti

4 Creare contenuti per il web - Andrea Giachetti

4 Creare contenuti per il web - Andrea Giachetti

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!