可能重複:myFunc(e)中的「e」是什麼?我如何將其他參數傳遞給myFunc?
鑑於此代碼:
function myFunc(e) {
e.preventDefault();
}
var x = 99;
$('#myId').bind('click', myFunc);
有人能告訴我什麼是e參數。另外我怎樣才能將x參數傳遞給myFunc?
可能重複:myFunc(e)中的「e」是什麼?我如何將其他參數傳遞給myFunc?
鑑於此代碼:
function myFunc(e) {
e.preventDefault();
}
var x = 99;
$('#myId').bind('click', myFunc);
有人能告訴我什麼是e參數。另外我怎樣才能將x參數傳遞給myFunc?
這是點擊事件,包裝爲jquery事件。
如果你想傳遞X,你可以這樣做:
$('#myId').bind('click', {x:x}, myFunc);
你的功能會發現在e.data.x
x
。
如果您需要本地事件(即不是jQuery之一),請使用e.originalEvent
,但事件的許多字段可通過e
訪問。
謝謝。很高興在問題結束之前看到您的答案。 – Alan2
這個問題並不清楚,但應該注意的是,處理程序不會通過事件數據獲得'x'。無論「x」的當前值如何,每次調用都會得到「99」。爲了提供當前值,OP需要將'myFunc'包裝到另一個可直接訪問的函數中,並傳遞當前值。所有這些當然都假設'myFunc'超出'x'的範圍。如果不是,那麼顯然'myFunc'應該直接引用它。 –
看一看[的文檔(http://api.jquery.com/bind/) – Bergi
由於沒有在鏈接的「複製」,我不數據(X)的提不認爲這是一個適當的重複。 –
鑑於特定的代碼,你沒有理由傳遞'x'。你只需要'myFunc'做一個直接的參考。當然你的實際代碼可能會有所不同。 –