Se volessi mandare un URL diretto alla sezione Foto basterebbe mandare questo link generato da SWFAddress.
Se però uso la cronologia, per esempio tornando indietro (grazie a SWFAddress abbiamo la cronologia del filmato, quindi posso usare il tasto Back del browser), notiamo come l'URL e il titolo della pagina cambino ma gli elementi del filmato SWF restano invece invariati.
Questo avviene perchè l'SWF non sa come "reagire" all'evento onChange; questo è il prossimo passaggio che andremo a vedere Ora vedremo come creare per l'evento onChange uno switch che controllerà su quale pagina l'utente sarà in quel momento e avvierà le conseguenti azioni per mostrare nell'SWF quella determinata sezione.
Portiamoci in questo punto del codice e creiamo il nostro controllo switch: il valore che useremo per sapere la sezione in cui siamo è e.value; scriveremo ora un "case" per ogni valore possibile, ad esempio impostiamo il caso in cui l'URL sia /Biography (ricordiamo la presenza dello slash in ogni URL di SWFAddress). Se si verificherà questa condizione, quello che il filmato dovrà fare sarà chiamare la funzione bioClick; poichè tale funzione è impostata per reagire ad un click dovremo passarvi un parametro, basterà chiamare la funzione e inserire come parametro "null".
Inseriamo quindi un comando break che fermerà il codice dello switch se la condizione del case fosse vera. Ripetiamo ora l'operazione per ogni sezione del sito; teniamo presente che questa è solo una delle possibilità di risposta per l'evento onChange, volendo possiamo scegliere anche altri codici per cambiare la nostra interfaccia in base all'evento onChange.
Richiamiamo qui photosClick, se la sezione è invece quella dei video richiamiamo videosClick e per la sezione dei link richiamiamo linksClick. Infine, nel caso in cui l'URL sia solo uno slash (/) vuol dire che possiamo mandare l'utente alla home page, che nel nostro caso è la biografia e lasciamo quindi bioClick.
Proviamo ora il filmato e vediamo se è tutto corretto, aggiorniamo la pagina nel browser e navighiamo tra le sezioni dall'SWF vediamo cambiare l'URL e creiamo la cronologia. Questa volta cliccando il tasto "Indietro" del browser vediamo che l'interfaccia dell'SWF cambia, proprio come l'utente si sarebbe aspettato; possiamo navigare tra le pagine, usare i tasti avanti e indietro del browser, e la sezione cambia di conseguenza.
Ricapitolando, il lavoro da fare non è stato poi molto; per prima cosa abbiamo creato il codice HTML - ricordo ancora una volta l'importanza dell'incorporamento degli script in quest'ordine e il passaggio dell'ID del filmato nel codice SWFObject - quindi abbiamo visto in Flash che per ogni cambio id stato del filmato usando il comando setValue di SWFAddress, mentre quando abbiamo un evento lanciato dall'utente, come ad esempio dalla pressione del tasto "Indietro" o dall'immissione di un nuovo URL, riceviamo una notifica da SWFAddress tramite l'evento onChange dove basandoci sul valore del parametro di tale evento possiamo cambiare lo stato del nostro filmato.
Questa parte di codice va implementata dallo sviluppatore, abbiamo visto un esempio semplice dove abbiamo usato uno switch e richiamato delle funzioni; se avessimo avuto un'animazione su timeline avremmo potuto inviare a determinati frame tramite gotoAndPlay... Insomma questa parte è a discrezione dello sviluppatore e può variare a seconda dei casi.
SWFAddress offre poi altre feature, ad esempio la possibilità di impostare il testo della barra di stato (quindi ad esempio al rollover sui pulsanti potrei impostare tale testo usando il comando set Status) ma quanto abbiamo visto è sufficiente e basilare per usare i tasti di navigazione e avere il deep linking e la possibilità di usare URL diretti con SWFAddress.
Per approfondire: