Я пытаюсь взять кучу el
из объекта и приложить метод в качестве обработчика кликов и передать щелчок el
в функцию. Код выглядит так (jQuery):
svCatEditor.list.bind('click', svCatEditor.controller($(this)));
Когда я console.log вне $(this)
в svCatEditor.controller
я получаю объект window
. Я понимаю, почему это происходит: http://unschooled.org/2012/03/understanding-javascript-this/
Я не понимаю, как обойти это. Нужно ли мне использовать совершенно другой подход или есть что-то простое, что мне не хватает?
Заранее спасибо.
Вам нужно будет сделать это следующим образом:
svCatEditor.list.bind('click', function() { svCatEditor.controller($(this)) } );
this
внутри контекста функции обратного вызова относится к текущему объекту, который запускает обработчик событий. В противном случае в вашем внешнем контексте this
относится к окну.