| Javascript Message Box Tutorial: come creare un oggetto che interagisce con il documento |
|
|
| Articoli tecnici - Sviluppo & sistema | |||
| Scritto da Riccardo Zorn | |||
| Giovedì 18 Settembre 2008 16:14 | |||
|
La creazione degli oggetti in Javascript è una necessità nelle applicazioni che superano le poche righe. Tuttavia scrivere oggetti richiede inizialmente molta più fatica. Come ho scritto nel precedente articolo, questa maggior fatica iniziale viene ripagata in maggior facilità di manutenzione ed estensione dell'oggetto. Voglio qui illustrare le differenze tra approccio procedurale e creazione di oggetti di una funzione semplicissima, che visualizza un messaggio a video e invoca una funzione quando si preme un tasto. I 5 passi illustrano tutta la procedura, e vanno da un livello di complessità ridicolo fino ad affrontare diversi aspetti fondamentali dello sviluppo. I primi 3 passi sono compatibili con IE, i successivi con (grossomodo) tutti i browser Passo 1. Html + js + cssPartiremo da un singolo file html contenente il javascript, il css e l'html, che ha tre funzioni: una per mostrare il messaggio, e due invocate da ciascuno dei bottoni sul messaggio. Passo 2. Creiamo l'oggetto msgBoxper la sola visualizzazione del messaggio. Verifichiamo che continua a funzionare Passo 3. Completiamo la funzionalità dell'oggettoVediamo come passare gli eventi avanti e indietro dalla funzione chiamante alla funzione di risposta.Introduciamo un metodo ask (bottoni si/no) e un metodo tell (solo bottone ok) Passo 4. Separiamo css, js, html in files separati, e aggiungiamo il supporto per firefoxQuesto è lo step più importante. A questo punto abbiamo 100 righe di javascript. Per mostrare un messaggio. Imbarazzante, direste. Però abbiamo creato un oggetto che espone 2 funzioni, ask e tell, ma che è con pochissima fatica estendibile per gestire tutta la messaggistica di un programma, inclusi gli input di testo. Passo 5: angoli arrotondatiAnche l'occhio vuole la sua parte. Semplifichiamo anche l'uso spostando quanto possibile fuori dal file html principale.
Passo 6: finestra modaleFacciamo in modo che l'utente non possa interagire con il resto della pagina finché non ha cliccato un bottone. Passo 7: tastieraFacciamo funzionare anche la tastiera Passo 8: timeoutIl timeout permette di specificare nelle funzioni un numero di secondi trascorsi i quali la finestra viene chiusa premendo il bottone predefinito. Passo 9: ListeLa lista permette di proporre una lista di scelte all'utente che potrà poi sceglierne una. Passo 10: Integrazione con l'applicazioneTestiamo la messagebox all'interno di una applicazione ajax. E vediamo quali modifiche sono necessarie Passo 11: AllineamentoUn approccio per spostare la messageBox una volta creata Passo 12: Multi-istanzaRendiamo possibile creare più istanze della messageBox sulla stessa pagina. Quindi modifichiamo le callBack e usiamo qualche escamotage per risolvere semplicemente la questione. Passo 13: Input di testo
|
| < Prec. | Succ. > |
|---|






