我可以在 Javascript 中将更多参数传递给事件处理函数吗?

McS*_*man 0 javascript event-handling

我一直在试图找出更多关于鼠标事件,例如onmouseoveronmouseoutonmousemove,但没有太多的信息。默认情况下,这些事件处理程序似乎只有一个参数,即事件本身。

element.onmouseover = mouseoverFunction

function mouseoverFunction( event ) {
    // Do stuff here
}
Run Code Online (Sandbox Code Playgroud)

但是我希望能够将其他参数传递给函数。

function mouseoverFunction( event, moreArgs ) {
    // Do stuff here
}
Run Code Online (Sandbox Code Playgroud)

如何将事件参数和附加参数传递给函数?

还可以将更多参数传递给事件处理函数吗?

elc*_*nrs 6

您可以创建一个高阶函数:

function mouseover(arg1, arg2) {
  return function(event) {
    // Do stuff here
  }
}

element.addEventListener('mouseover', mouseover(1, 2))
Run Code Online (Sandbox Code Playgroud)