Bonsoir tout le monde,

J'essaye d'apprendre � faire du js en objet mais l� �a coince et je ne comprend vraiment pas pourquoi...
C'est une classe qui r�cup�re les coordonn�es de la souris, et la console Firefox renvoie une erreur : "this.getPos is not a function" dans la fonction init();
Le code :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var Tracking = {
	xy : [],
	allpos : [],
	event : null,
	init : function(e) {
		this.event = (!e) ? window.event : e;
		this.getPos();
	},
	getPos : function() {
		if (this.event.pageX || this.event.pageY) {
			this.xy = [e.pageX, e.pageY];
		} else if (this.event.clientX || this.event.clientY) {
			this.xy = [
				e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft,
				e.clientY + document.body.scrollTop + document.documentElement.scrollTop
			];
		}
		this.addPos();
		alert(this.xy[0]+'-'+this.xy[1]);
	},
	addPos : function() {
		this.allpos.push(this.xy);
	}
};
J'ai tent� avec un namespace mais c'est pareil :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
var Tracking = function() {
	var xy, allpos, event;
	function getPos() {
		if (this.event.pageX || this.event.pageY) {
			this.xy = [e.pageX, e.pageY];
		} else if (this.event.clientX || this.event.clientY) {
			this.xy = [
				e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft,
				e.clientY + document.body.scrollTop + document.documentElement.scrollTop
			];
		}
		this.addPos();
		alert(this.xy[0]+'-'+this.xy[1]);
	}
	function addPos() {
		this.allpos.push(this.xy);
	}
	return {
		init : function(e) {
			this.xy = [];
			this.allpos = [];
			this.event = (typeof(e) == 'undefined') ? window.event : e;
			this.getPos();
		}
	};
 
}();
Et c'est initialis� comme �a :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
addEvent(window.document, 'mousemove', Tracking.init);
Voyez-vous d'o� �a peut venir ?

Merci d'avance pour votre aide !