【发布时间】:2016-01-21 20:21:54
【问题描述】:
我无法理解为什么事件侦听器的函数参数不只接受函数。代码如下:
声明变量:
var spanJS = document.getElementById("spanJS")
var txtPlayers = document.getElementById("ContentPlaceHolder1_txtPlayers")
var txtAmount = document.getElementById("ContentPlaceHolder1_txtAmount")
然后关联事件监听器:
txtAmount.addEventListener("keyup", UpdateTotals())
txtPlayers.addEventListener("keyup", UpdateTotals())
然后是函数:
function UpdateTotals() {
...
}
这是整个代码。问题是,当我运行它时,它在没有任何 keyup 事件的情况下执行 UpdateTotals(),并且侦听器不起作用。
如果我进行以下更改,它会按预期工作:
txtAmount.addEventListener("keyup", function () {
UpdateTotals()
})
txtPlayers.addEventListener("keyup", function () {
UpdateTotals()
})
谁能解释一下为什么我不能只输入函数的名称,我必须将它“孩子”到另一个函数中?
【问题讨论】:
标签: javascript function syntax addeventlistener