Контекст объекта 'this' в событии jQuery

Скажем, у меня в javascript определено следующее:

com.company.long.namespace = {
    actions: {   
        add: {  
            defaults: {
                url: 'myurl/submit',
            },

            invoke: function () {   
                var submitUrl = this.defaults.url;                          
                com.company.long.namespace.foo.util.server.submit({
                    url: submitUrl,
                    success: function() { }
                });
            },
        }
    }
};

, которое я затем вызываю в контексте щелчка JQuery event:

$(myElem).click(function() {
    com.company.long.namespace.actions.add.invoke();
});

Из-за того, как this работает в обратных вызовах событий jQuery, this.defaults не определен при вызове из этого контекста. Есть ли способ по-прежнему использовать «это» в этой области, без необходимости определять полное пространство имен или без использования jQuery.proxy ?

5
задан cweston 3 May 2011 в 21:45
поделиться