У меня есть следующий литерал объекта. В методе Init
я установил обработчик для события щелчка. Позже, когда вызывается обработчик, я хочу получить доступ к свойству Bar
с помощью ключевого слова this
. В этот момент this
имеет значение jQuery.
Кроме того, чтобы прояснить ситуацию, я не хочу реализовывать функции, встроенные в селекторы.
var StackOver = {
Bar: "MyBarValue",
Init: function(){
$("#postId").click(this.Foo);
},
Foo: function(eventObject){
// here **this** is jQuery keyword
// how do I access StackOver.Bar?
}
}
Как мне получить доступ к свойствам этого литерала объекта внутри Foo
?
Это могло быть легко, если бы я использовал литерал конструктора, который мне не подходит:
var StackOver = function (){
var self = this;
function bar()
{
// I can use self here
}
}
edit Я забыл упомянуть, что я использую шаблон модуля раскрытия в этом литерале объекта, который скрывает частные свойства объекта.
this
. 09.01.2014Foo
уже есть jQuerythis
. Как мне получить доступ к каждому из них, используя то, что вы предлагаете? 09.01.2014this
будет подхвачен объектомStackOver
, см. Мою правку, если это невозможно 09.01.2014