вот туплю....
есть массив, который я передаю как параметр в конструктор объекта.
buttons : {
"Ok" : function(){
console.log("Ok");
this.action();
},
"Cancel" : function(){
console.log("Cancel");
this.action();
}
}
в объекте есть функция:
this.action = function(){
events.beforeAction(self);
console.log("action");
events.afterAction(self);
}
в объекте , есть кусок кода, который создает кнопки, в данном случае 2
for (i in buttons) {
var bName = i;
var bClick = buttons[i];
var b = document.createElement("button");
b.textContent = bName;
b.addEventListener('click', function(){bClick.call(self)}, false);
/*b.onclick = function(event){
return bClick.call(self);
}*/
//b.onclick = bClick;
document.body.appendChild(b);
}
так вот. Для баттанов добавляется всегда последний переданный в массиве метод. Ткните лицом, где туплю.