Если пишете в ООП, то юзайте навешивание обработчика на объект:
QuizForm.prototype = {
init: function () {
this.button.addEventListener('click', this);
this.setState();
},
handleEvent: function (event) {
switch(event.type){
case 'click':
this.click(event);
break;
/...
}
},
click: function(){
if (!this.start) this.start = true
else if (this.start && this.question !== this.messages.questions.length - 1) this.question++
else {
this.start = false
this.question = 0
}
this.setState();
}
/,,,
}
Одна из самых недооценённых фич, ИМХО. =\