par
Tracker » 19 nov. 2007, 13:32
bon en fait c'est tout simple avec l'objet event mais y'a un truc que je comprend pas, voici un code qui ressemble:
Code : Tout sélectionner
//cette méthode ajoute un ecouteur à un element
function addListener(element, baseName, handler){
if (element.addEventListener)
element.addEventListener(baseName, handler, false)
else if (element.attachEvent)
element.attachEvent('on'+baseName,handler);
}
function load()
{
addListener(document.getElementById('nouvelleFiche'),'submit',verification);
}
function verification(event)
{
alert('yeaaaaaaaah');
if(event.target)
event.preventDefault();
else
window.event.returnValue=false;
}
//ajout des écouteurs au démarrage
addListener(window,'load',load);
la je vous ai tout mis.
pouvez vous m'expliquer comment il sait que le paramètre "event" passé à la fonction verification est un événement?
J'ai trouvé ce code tout prête mais je ne m'explique pas cette "apparition" de l'objet event parceque j'ai essaye avec un autre nom que event et ca marche aussi.
je comprends que la ligne:
Code : Tout sélectionner
addListener(document.getElementById('nouvelleFiche'),'submit',verification);appelle par reference la fonction verification mais apres je comprend pas d'ou vient le paramètre event, est ce un comportement par défaut de javascript?
merci
bonne journee
En réalité, y'a pas grand chose à comprendre,
element.addEventListener (FF) et element.attachEvent (IE) invokent ton handler en passant un objet event...
Sinon, addListener n'appelle pas, comme tu le penses, par reference la fonction verification, elle passe simplement une référence de ta fonction aux méthode précédement citée, permettant ensuite lors de l'action utilisateur qu'elle soit invokée. En javascript une fonction c'est un objet...
Tracker.
[quote="ours-blanc-"]bon en fait c'est tout simple avec l'objet event mais y'a un truc que je comprend pas, voici un code qui ressemble:
[code]//cette méthode ajoute un ecouteur à un element
function addListener(element, baseName, handler){
if (element.addEventListener)
element.addEventListener(baseName, handler, false)
else if (element.attachEvent)
element.attachEvent('on'+baseName,handler);
}
function load()
{
addListener(document.getElementById('nouvelleFiche'),'submit',verification);
}
function verification(event)
{
alert('yeaaaaaaaah');
if(event.target)
event.preventDefault();
else
window.event.returnValue=false;
}
//ajout des écouteurs au démarrage
addListener(window,'load',load);[/code]
la je vous ai tout mis.
pouvez vous m'expliquer comment il sait que le paramètre "event" passé à la fonction verification est un événement?
J'ai trouvé ce code tout prête mais je ne m'explique pas cette "apparition" de l'objet event parceque j'ai essaye avec un autre nom que event et ca marche aussi.
je comprends que la ligne:[code]addListener(document.getElementById('nouvelleFiche'),'submit',verification);[/code]appelle par reference la fonction verification mais apres je comprend pas d'ou vient le paramètre event, est ce un comportement par défaut de javascript?
merci
bonne journee[/quote]
En réalité, y'a pas grand chose à comprendre,
element.addEventListener (FF) et element.attachEvent (IE) invokent ton handler en passant un objet event...
Sinon, addListener n'appelle pas, comme tu le penses, par reference la fonction verification, elle passe simplement une référence de ta fonction aux méthode précédement citée, permettant ensuite lors de l'action utilisateur qu'elle soit invokée. En javascript une fonction c'est un objet...
Tracker.