2012-02-28 85 views
0

我正在嘗試爲我正在編寫的JavaScript應用程序使用經典繼承模型,並且它依賴於將this定義爲該方法正在調用的類的當前實例。這工作正常。我可以在不修改'this'的情況下使用jquery的'bind'嗎?

問題是,我然後嘗試在JQuery中綁定該對象的方法,並且它將this重寫爲JQuery元素,這是有問題的。

我知道通常的做法是在呼叫$.bind之前保存this的副本,但由於我在我的班級中綁定了一個方法,因此我沒有權限訪問。

我beggining放棄希望,我將能夠獲得OOP的使用jQuery的回調工作的這種風格作爲是太瘋狂了,但我想它不會傷害要求。

+0

可能重複[哪種解決方案是用於通「這個」參數的JavaScript事件處理好(http://stackoverflow.com/questions/8779749/which-solution-is-better-for-passing-這個參數對JavaScript的事件句柄) – 2012-02-28 04:41:12

回答

1

您可以使用jQuery的$.proxy()更改this。的

$('.class').bind('click', $.proxy(function() { 
    // `this` is now what `this` is in the outside context. 
}), this)); 
相關問題