Javascript事件侦听器无法正常工作

时间:2015-07-31 11:44:40

标签: javascript

EVENT LISTENER:

document.getElementById("first").addEventListener("keydown", show_words("p1", "First Name"), false);

功能show_words:

function show_words(z,x)
{
    document.getElementById(z).innerHTML = x;
}

问题:由于某些原因,当我加载页面时,innerHTML的{​​{1}}已经显示。我的问题是:为什么在事件被执行后被调用的函数?

我尝试过其他事件处理程序,例如mouseover和click,但是innerHTML正在显示。

2 个答案:

答案 0 :(得分:1)

您应该使用回调函数。

document.getElementById("first").addEventListener("keydown", function() {
   show_words("p1", "First Name")
}, false);

答案 1 :(得分:0)

您需要传递一个函数引用作为回调,在您调用addListener时调用show_words并将其返回的值(undefined)作为{的回调传递{1}}。

您可以使用匿名回调函数,然后使用所需参数调用keydown方法

show_words