[POO] Variable réinitialisée dans une classe
Bonjour à tous,
Je débute en POO javascript et j'ai un soucis que je ne sais pas résoudre.
Voici ma classe :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
function souris(){
this.top=0;
this.left=0;
// Variables servant a prendre les coordonnées de la souris
// Fonction permettant de connaitre la position de la souris
this.posSouris = function(){
if(navigator.appName.substring(0,3) == "Net") //Pour Netscape
document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = this.position;
}
// Fonction permettant de savoir ou se trouve la souris
this.position = function(e){
this.left = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x+document.body.scrollLeft;
this.top = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y+document.body.scrollTop;
}
} |
je créé un objet souris ainsi
Code:
1 2
|
var souri = new souris(); |
L'appel a ma fonction souris se fait ainsi:
Code:
1 2
|
<img id="circu" onmouseout="var obj = new img("inv"); obj.cache(); " onmouseover="var obj = new img("inv");obj.chgSource("/image/index/circui.jpg"); souri.posSouris();obj.chgPos(souri.top,souri.left); obj.affiche(); " src="/image/index/circu.gif"/> |
Le probléme s'est que au passage de la souris sur l'image une autre image doit s'afficher ou la souris se trouve mais elle s'affiche en 0;0 (coordonnées par défaut de mon objet souris).
Si lors de "souri.posSouris();" je fais un alert j'ai bien la position de la souris mais quand je passe a la fonction "obj.chgPos... " un alert me renvoi 0;0 soit la position par défaut de ma souris.
Je ne comprends pourquoi les variables se sont réinitialisées...
HELP plz ... MICI