Bonjour je suis actuellement en création de classe JS et j'aimerais intégrer des événement javascript comme onclick dans ma classe pouvez vous m'expliquer comment sa marche svp merci a tous.
Version imprimable
Bonjour je suis actuellement en création de classe JS et j'aimerais intégrer des événement javascript comme onclick dans ma classe pouvez vous m'expliquer comment sa marche svp merci a tous.
ouCode:onclick = fcuntion(){}
addEventListener ?
Si j'ai un objet div sur lequel je dois lié un event click
j'ai essayé ca ne marche pas :(.Code:
1
2
3
4 document.getElementById("div_a").click = function(){ }
Code:
1
2
3
4
5
6 function myclasse(param1,param2){ <div style="margin-left:40px">this.param1 = param1;</div><div style="margin-left:40px">this.param2 = param2;</div><div style="margin-left:40px">this.maMethode(){ alert("mymethode"); }</div>};
heuou tu n'as pas réussi à le faire fonctionner ???Citation:
ça marche pas
Code:
1
2
3
4
5
6
7
8
9
10
11 <script type="text/javascript"> function init(){ document.getElementById('div_a').onclick=function(){ alert('ben si ça marche')} } </script> </head> <body onload="init()"> <div id="div_a">div A </div> </body> </html>
bonjour,
comme ceci headmax
Par contre :Code:
1
2 document.getElementById("div_a").onclick=function(){alert("plop")}
=> c'est du n'importe quoi :aie:Code:
1
2
3
4 function myclasse(param1,param2){<blockquote>this.param1 = param1;</blockquote><blockquote>this.param2 = param2;</blockquote><blockquote>this.maMethode(){ alert("mymethode"); }</blockquote>};
Un event onclick sans classe, je n'ai pas de soucis.
Ici j'ai une classe dans lequel je dois utiliser l'évenement click.
Sauf qu'il ne gere pas
mon message d'erreurCitation:
divEventClick is not defined
tu peux developper ?Citation:
Ici j'ai une classe dans lequel je dois utiliser l'évenement click.
tu dois affecter l'événement uniquement si l'objet HTML est chargé dans la page HTML donc deux possibilités :
- tu ajoutes les événements sur les autres objet lors du onload :
et la partie JS :Code:
1
2
3
4
5
6
7
8 <body onload="plop()"> <div id="idDiv"> bla bla bla </div </body>
Code:
1
2
3
4
5
6
7
8 <script type="text/javascript"> function plop() { document.getElementById("idDiv").onclick=function(){alert("plop")} } </script>
- ou alors tu ajoutes directement les balises scripts à la fin de la page (ce que je n'aime pas trop car le code JS est inclus dans le code HTML :
Code:
1
2
3
4
5
6
7
8
9
10
11
12 <body> <div id="idDiv"> bla bla bla </div> <script type="text/javascript"> document.getElementById("idDiv").onclick=function(){alert("plop")} </script> </body>
Je développe avec un code tout simple et surtout avant tout merci pour ton aide :oops:.
J'ai une classe sous la forme
Code:
1
2
3
4
5
6
7
8
9
10
11
12 function myclasse(param1,param2){ this.param1 = param1; this.param2 = param2; this.oneMethode = function(){ alert("classe fonctionne"); } //method avec element.onclick = function(){} ici a prévoir mais en vain... } var obj = new myclasse("test1","test2"); obj.oneMethode();
?? element ??? quel elementCode://method avec element.onclick = function(){} ici a prévoir mais en vain...
tu le passes en param ?
re voici comment j'essaye de passer cette methode mais en vain ....
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 var divEventClick = document.getElementById("div_0"); function myclasse(param1,param2,divEventClick ){ this.param1 = param1; this.param2 = param2; this.param3 = divEventClick; this.oneMethode = function(){ alert("classe fonctionne"); } this.divEventClick.addEventListener("click", thumbClick,true); this.thumbClick = function(){ alert("click thumb") } } var obj = new myclasse("test1","test2"); obj.oneMethode();
Comme sus-dit ...Code:var divEventClick = document.getElementById("div_0");
si tu essayes d'appeler un element avant qu'il ne soit instancié !!!
Donc merci pour tes réponses SpaceFrog, effectivement il suffit de mettre
Bon week end tu me sauve la vie ;). A++:ccool:Code:
1
2
3
4 onclick = function(){ alert("ca marche et merci SpaceFrog"); }
:merci: à Auteur qui a débusqué le loup en premier ...