Salut à tous,
J'ai voulu approfondir ma connaissance du gestionnaire d'evenement javascript en réalisant un drag'n'drop tout bête.
Tout se passait bien, jusqu'à ce que je me mette en tête de mettre le tout sous la forme d'un objet...
Après avoir essayer de tourner le tout sous plusieurs formes, tester différentes syntaxes pour créer mes objets etc... J'en suis arrivé au constat suivant :
Si je veux définir une capture d'evenement où mafonction est une méthode de monobjet, du type :
Code :
- document.onmousemove = monobjet.mafonction;
|
Je constate que cette méthode est incapable d'accèder aux attribut de l'objet...
Plus concretement :
Code :
- var Objet = function(){
- this.foo = 'bar';
- this.mafonction = function(){
- alert(this.foo);
- }
- }
- var monobjet = new Objet();
- document.onmousedown = monobjet.mafonction;
|
En cliquant, on obtient bien une alerte, mais foo est "undefined".
Je ne maitrise pas assez bien la POO, ni même les gestionnaires d'evenements pour comprendre ce qui manque, ou ce qui est incorrect/impossible/incohérent...
Et c'est bien pour ça que je vous demande votre avis...
Alors, c'est grave docteur? Est-ce que je dois tout de suite commencer à manger mon clavier?