Всем привет. Пытаюсь повесить несколько одинаковых обработчиков на один объект.
<html>
<head>
<title></title>
<script>
function j(data) { return new operation(data); }
function operation(data) {
this.obj = data;
this.stackMouseMove = [];
return this;
}
operation.prototype.bind = function(func) {
var self = this;
this.stackMouseMove.push(func);
if(!this.obj.onmousemove) this.obj.onmousemove = function() { self.mousemove(); };
};
operation.prototype.mousemove = function() {
for(var i = 0; i <= this.stackMouseMove.length-1; i++) {
this.stackMouseMove[i]();
}
};
window.onload = function() {
j(document).bind(function() { document.getElementById('q').innerHTML = Math.floor( Math.random() * (10 - 1 + 1) ) + 1; });
j(document).bind(function() { document.getElementById('w').innerHTML = Math.floor( Math.random() * (10 - 1 + 1) ) + 1; });
};
</script>
</head>
<body>
1. <span id="q">0</span><br>
2. <span id="w">0</span><br>
</body>
</html>
Но при каждом вызове j(document).bind(....) возвращается новый operation.
Подскажите, как решить эту проблему?