2013-07-30 65 views
0

我試圖將對象的「已觸摸」函數設置爲另一個函數。我始終聽到有關JavaScript和頭等功能的消息,但仍然沒有掌握它。以下是我的:Javascript將參數設置爲函數

customClose.touched = this._close.bind(this); 

customClose有一個名爲「touched」的函數,默認爲空。我希望它被設置爲另一個函數this._close.bind,它接受一個參數。我該如何做這項工作?

回答

0

這將這樣的伎倆:

customClose.touched = this._close.bind; 

請注意,如果你調用customClose.touched(p)時使用thisthis._close.bind,裏面,this將參考customClose

如果你想this繼續參照this._close,您可以使用bind

customClose.touched = this._close.bind.bind(this._close); 
+0

我剛發現問題完全是其他問題。我的原始線路正常工作。我認爲我那種令人困惑的問題和解釋導致你的答案有些冗長,但我認爲如果實際上存在問題,你就走在了正確的軌道上。謝謝! –

0

原來我原來的實施是正確的。問題是由於我做了另一個改變,關閉按鈕已經移動。由於它是隱形的,我沒有注意到。將功能綁定到對象的功能如下:

customClose.touched = this._close.bind; 
相關問題