誰かがJSで奇妙に思えることを理解するのを手伝ってくれませんか?
以下のコードは機能します。関数inlineEditEvent.init()
が呼び出され、次にt.copy()
正しく呼び出されます ( where var t = this;
)。
ただし、それを に置き換えるとthis.copy()
、エラーが発生しますthis.copy is not a function
。
ここの違いは何ですか?以下の方法は機能するのに、最後の段落で説明した方法では機能しないのはなぜですか? ありがとう。
jQuery(function($){
$(document).ready(function(){inlineEditEvent.init();});
inlineEditEvent = {
init : function(){
var t = this;
/** Copy the row on click */
$('#the-list').on('click', '.row-actions a.single-copy', function(){
return t.copy();
});
}, // init
copy : function(){
// Do stuff here
}
} // inlineEditEvent
});