Имам клас (или обект, съдържащ функция; чувал съм, че няма такова нещо като Javascript клас), наречен Foo, с манипулатор на събития, който е прикачен към събитие за кликване. Когато се извика манипулатор на събития, искам да променя свойство на моя клас Foo. Обикновено бих използвал ключовата дума this
, но в манипулатора на събития препратката this
е зададена на препратката към html елемента. Ето моят код:
function Foo() {
this.num=0;
$('element').click(this.eventHandler);// jQuery to attach an onclick event to my element.
this.eventHandler=function() {
this.num++;// This doesn't work.
// Normally, "this" would refer to my instance of Foo,
// but as an event handler, "this" refers to the html element.
}
}
Така че въпросът ми е: как да получа препратка към моя екземпляр на Foo в моя манипулатор на събития, така че да мога да променя свойствата му (като num
)?