Newsgroup: it.comp.lang.javascript
Titolo: chiarimenti sui gestori di eventi come metodi

In javascript non ho ben capito l'utilità dei gestori di eventi come metodi.
"Ad esempio si immagini una pagina contenente tre semplici campi di testo.
Uno dei campi ha definito un gestore di eventi onFocus. Spostando
fisicamente il cursore in quel campo, questo ottiene il focus e quindi
attiva il suo gestore di eventi onFocus.
Se il campo non ha il focus, un pulsante può chiamare il gestore di eventi
onFocus di quel campo facendo riferimento ad esso come metodo:
document.nomeModulo.nomeCampo.onfocus()
Questa azione eseguita attraverso uno script non porta fisicamente il focus
sul campo. Tuttavia il campo ottiene il focus sotto il controllo dello
script attraverso il metodo onFocus()." -JavaScript la Guida Quarta
Edizione-
DOMANDA: Dato che non si esegue l'evento ma si attiva comunque la chiamata
all'espressione o alla funzione JavaScript assegnata a quel gestore di
eventi, mi domando se non è la medesima cosa utilizzare un gestore di eventi
qualunque e richiamarlo come metodo per attivarne la chiamata
all'espressione o la funzione a lui associata: in tal caso, perchè fare
tutto questo giro di passaggi e non attivare direttamente la funzione o
l'espressione del caso?
---------fine primo caso---------
"Un sottoprodotto della capacità di un gestore di eventi di agire come
metodo, è la possibilità di definire l'azione di un gestore di eventi
definendo una funzione con il nome del gestore di eventi. Per esempio,
invece di specificare un gestore di eventi onLoad nel tag <BODY> di un
documento, è possibile definire una funzione come la seguente:
function onload() {
  dichiarazioni
}
" -JavaScript la Guida Quarta Edizione-
DOMANDA: mi potreste fare un esempino al riguardo? Proprio non lo capisco...
Grazie
Vail

 DOMANDA: mi potreste fare un esempino al riguardo? Proprio non lo capisco...
La verita'? Non ho capito neanch'io cosa intendesse dire del tutto (sara'
che ancora mi devo svegliare).
Probabilmente si riferisce al fatto che non e' necessario specificare nel
tag dell'elemento il gestore eventi, lo puoi anche fare da codice:
<body onload="alert('loaded')">
e' bene o male equivalente a:
<script type="text/javascript">
onload=function(){
	alert('loaded');
}
</script>
<body>
P.S.
Per curiosita', qual'e' l'origine del tuo nick?
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
"Questa e' una lezione difficile, ma importante: Cio' che e' stato, e cio'
che sara', non cambia cio' che e'.
Sta a te decidere poi come prendere questa cosa,se logorarsi per un passato
che non puoi cambiare, invece di prendere tutto il bene che il presente ti
offre." ()

 <body>
RISPOSTA Vail:
Premetto che sono ancora molto indietro a fatto di conoscenze in javascript,
ma credo che quello che hai scritto tu equivale a qualcosa come:
<html>
<head>
<script type="text/javascript">
onload = allertami
function allertami(){
alert('loaded')
}
</script>
</head>
<body>
</body>
</html>
dove onload è considerato stavolta come proprietà e non come metodo, tant'è
che non ha nemmeno le ().


 Per curiosita', qual'e' l'origine del tuo nick?
Origine come etimologia, oppure l'idea di cui ha avuto origine?
Come etimologia del nome non saprei, probabilmente non ha radici, come idea
dalla quale si è sviluppato essendo appassionato anche di videogiochi ho
avuto un' ispirazione un po' fantasy, ma non è riferita e nessun personaggio
dei videogiochi che io conosca
Perchè questa domanda? Ti piace il nick? ;-)
ciao
Vail

 Perchè questa domanda? Ti piace il nick? ;-)
Perche' anche io sono appassionato di videogiochi e di fantasy, ed il nick
mi ricordava un nome di un personaggio, che si chiamava Vain :)
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

 mi ricordava un nome di un personaggio, che si chiamava Vain :)
Forse mi sfugge, forse non lo conosco, Vain di quale gioco č stato
protagonista?
Spero che tu non prenda male le mie "ribattute", credo che un dibattitto
serva sempre a chiarire meglio le cose.;-)
Ciao
Vail

 serva sempre a chiarire meglio le cose.;-)
Certo, figurati. L'importante e' non cadere nei flames :)


 No.
Risposta Vail:
Vedi, se mi dici che non è così, in nome dell'autorità del libro "JavaScript
La Guida" di Danny Goodman, ti dico che sei tu che sbagli, perchè sono
parole testuali del libro :-)  Vedi
http://www.librinformatica.it/novita/libri01/mg42036.htm
 CAPITOLO 14 pag.
206-207
Ciao Vail

 parole testuali del libro :-)  Vedi
Gia' "le parole testuali del libro" hanno sbagliato :)
(vedi inizio nostro topic)
Io non lo prenderei troppo come riferimento ;)
P.S.
Prova a passare alla reference di Javascript, secondo me ti fara' meno
casini in testa.
-- 
C'ya,
  ZER0 :: coder.gfxer.webDesigner();
"Questa e' una lezione difficile, ma importante: Cio' che e' stato, e cio'
