Javascript 能否将参数传递给从EventListener调用的函数?

Javascript 能否将参数传递给从EventListener调用的函数?,javascript,function,event-handling,Javascript,Function,Event Handling,我正在用JS文件中的EventListners替换内联事件处理。我被卡在一张表格上了 onclick="funcMain(func1(document.getElementById('foo')), func2(document.getElementById('bar'))" 因为我做不到 document.getElementById('offendingInlineElement').addEventListener.('onclick', funcMain('document.getEl

我正在用JS文件中的EventListners替换内联事件处理。我被卡在一张表格上了

onclick="funcMain(func1(document.getElementById('foo')), func2(document.getElementById('bar'))"
因为我做不到

document.getElementById('offendingInlineElement').addEventListener.('onclick', funcMain('document.getElementById('foo')), func2(document.getElementById('bar'), false)
如何将参数传递给函数
funcMain


出于好奇,当一个函数像这样过去时,它是被称为函数指针还是其他东西?

使用匿名函数:

var inlineElement = document.getElementById('offendingInlineElement');

inlineElement.addEventListener("click", function(){
    //write any piece of code you desire here
    funcMain(document.getElementById('foo'));
}, false);

为什么不创建一个调用document.getElementById('foo')的函数呢?为什么需要将其作为参数传递?我认为这可能是重复的,因为没有提到
bar
func1
func2
。您的意思是
function(){funcMain(func1(document.getElementById('foo'))、func2(document.getElementById('bar'))
@celerita,因为这只是一个示例。您可以在匿名函数中使用任何参数调用任何函数。