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 クリック イベントのコンテキスト内で呼び出します。
$(myElem).click(function() {
com.company.long.namespace.actions.add.invoke();
});
「this」が jQuery イベント コールバック内で機能する方法のため、このコンテキストから呼び出された場合、 this.defaultsは未定義です。完全な名前空間を定義したり、 jQuery.proxyを使用したりせずに、このスコープ内で「this」を引き続き使用する方法はありますか?