0
私は以下の関数を作成し、クリックでクリックカウントを取得しました。それは動作しますが、問題は、func
を呼び出すときに、func
にclickCountが持つオブジェクトコンテキスト(つまりthis
)がないことです。オブジェクトコンテキストを渡す方法
この質問を作成する際、StackOverflowは、関数がコンテキスト(または?)で定義されていることを除いて、私が望むほとんどの答えである以下のリンクを示しました。私は
How to pass object context to an anonymous function?
がどのように私はclickCountはでFUNCに私の呼び出しでこれを渡すことができます私のclickCountはハンドラにコンテキストを適用したいですか?
var clickCountObj = { //this is in the global context
'clickTime' : 400
};
$.fn.clickCount = function (func) {
$(this).click(function(e) {
if (!clickCountObj.prevClickTime || clickCountObj.prevClickTime < Date.now() - clickCountObj.clickTime) {
clickCountObj.clickCnt = 1;
} else {
clickCountObj.clickCnt = clickCountObj.clickCnt + 1;
}
clickCountObj.prevClickTime = Date.now();
func(clickCountObj.clickCnt, e);
});
}