У меня есть класс (или объект, содержащий функцию; я слышал, что такого понятия, как класс 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
)?