Использование Mootools 1.3.2
Код выглядит следующим образом:
var DNReportAbuse = new Class({
Extends: DNUserDialog,
comment_id: null,
container: null,
initialize: function(classname)
{
var bindclass = $(document.body).getElements(classname);
bindclass.each(function(el) {
el.addEvents({
click: function() {
this.reportComment();
}.bind(this)
});
});
},
reportComment: function() {
this.preventDefault();
alert('hello');
return false;
}
});
Событие связывается, а когда «this.reportComment ();» заменяется на «alert ('hello world');" это работает полностью ...
... но когда используется «this.reportComment ()», я вместо этого получаю сообщение об ошибке, которое Firebug объясняет как «функция this.reportComment () не является функцией».
Я полагаю, что моя проблема связана со ссылкой на функцию класса, выходящую за ее пределы, хотя я немного запутался, почему ... или как решить эту проблему. Конечной целью является достижение привязки функции reportComment () по щелчку ко всем членам класса CSS (до 20 на страницу). Сложность состоит в том, что обращение к функции reportComment () с помощью this.reportComment () приводит к ошибке, утверждающей, что функция не существует, когда она явно существует.
Просмотр подобных вопросов о переполнении стека, похоже, не ответил на этот вопрос ... поэтому спрашиваю в надежде, что кто-то может указать мне правильное направление.