2012-09-26 35 views
1

可能重複:myFunc(e)中的「e」是什麼?我如何將其他參數傳遞給myFunc?

In Javascript/jQuery what does (e) mean?

jQuery's .click - pass parameters to user function

鑑於此代碼:

function myFunc(e) { 
    e.preventDefault(); 
} 

var x = 99; 
$('#myId').bind('click', myFunc); 

有人能告訴我什麼是e參數。另外我怎樣才能將x參數傳遞給myFunc?

+0

看一看[的文檔(http://api.jquery.com/bind/) – Bergi

+0

由於沒有在鏈接的「複製」,我不數據(X)的提不認爲這是一個適當的重複。 –

+0

鑑於特定的代碼,你沒有理由傳遞'x'。你只需要'myFunc'做一個直接的參考。當然你的實際代碼可能會有所不同。 –

回答

7

這是點擊事件,包裝爲jquery事件。

如果你想傳遞X,你可以這樣做:

$('#myId').bind('click', {x:x}, myFunc); 

你的功能會發現在e.data.xx

如果您需要本地事件(即不是jQuery之一),請使用e.originalEvent,但事件的許多字段可通過e訪問。

Reference

+0

謝謝。很高興在問題結束之前看到您的答案。 – Alan2

+0

這個問題並不清楚,但應該注意的是,處理程序不會通過事件數據獲得'x'。無論「x」的當前值如何,每次調用都會得到「99」。爲了提供當前值,OP需要將'myFunc'包裝到另一個可直接訪問的函數中,並傳遞當前值。所有這些當然都假設'myFunc'超出'x'的範圍。如果不是,那麼顯然'myFunc'應該直接引用它。 –

相關問題