| Passo 3: Completiamo la funzionalità base |
|
|
| Articoli tecnici - Sviluppo & sistema | |||
| Scritto da Riccardo Zorn | |||
| Venerdì 19 Settembre 2008 06:37 | |||
|
Il funzionamento di un oggetto richiede che anche la comunicazione iniziata dall'oggetto verso il programma chiamante sia gestita dall'interno dell'oggetto. In inglese si usa il termina CALLBACK per indicare una seconda funzione passata come parametro da una prima funzione, e che verrà invocata dalla prima funzione quando si saranno verificati eventi. L'analogo in un linguaggio di programmazione che dispone di una IDE è il controllo bottone, che ha una proprietà onclick: là collegheremo una nostra funzione. Al verificarsi dell'evento la funzione collegata alla proprietà onclick verrà invocata. In javascript non abbiamo grossi problemi a passare la funzione, basta passarla per nome. Per comodità la registro in una variabile.
Quindi qui ho definito una prima procedura che collega gli eventi ai bottoni: e già che c'è gli assegna anche i valori standard per il testo ed il messaggio di risposta che dovranno fornire; Quindi assegna come proprietà dell'oggetto this.callBackFunction la funzione che andrà invocata quando l'utente chiude il message box. Il funzionamento è piuttosto lineare: assegno a buttonXDiv il <DIV> corrispondente, e lo trovo usando il suo ID; _msgBox.prototype.attachEvents = function (aCallBackFunction) Questa è simpatica: questa istruzione può tradursi: if (this.button1) return "inline" else return "none". Molto sintetica, permette di ridurre le dimensioni del codice aumentando la leggibilità. Se ne usate più di una nella stessa riga, commentate e spiegate cosa state facendo: altrimenti lo capirete solo voi. this.button1Div.style.display=(this.button1?"inline":"none");
if (this.button1)
I file descritti in questo articolo si possono scaricare dall'introduzione
|
|||
| Ultimo aggiornamento Venerdì 19 Settembre 2008 07:00 |

