开发者问题收集

AddEventListener不使用HTML按钮

2014-07-29
7699

简单的 html 按钮,我想在单击时发出警报。

HTML:
<div id="container>
    <button type="button>Click Me</button>
</div>

Javascript:
var cat = document.getElementById("container");
var dog = cat.getElementsByTagName("button");
function mouse (){
    alert("mouse")
};
dog.addEventListener("click", mouse, false);

如果我将容器定位为:

cat.addEventListener("click", mouse, false);

每次单击 div 时都可以正常工作,但是当我尝试将其添加到按钮时,什么也没有发生。我也试过……

dog.addEventListener("click, mouse(), false);

当我尝试该代码时,鼠标功能会在加载时运行。

2个回答

您的 JS 是错误的:

应该使用 getElementById 而不是 GetElementById 。Javascript 区分大小写。

我没看到您在哪里声明了 hide 函数。我只看到从未使用过的 mouse 函数。

此外,根据 @Harry 的评论,通过调用 getElementsByTagName ,您将获得 DOM 元素集合。因此您应该使用:

dog[ 0 ].addEventListener("click", hide, false);
antyrat
2014-07-29

大量拼写错误

//get not Get
var cat = document.getElementById("container");
//get first of array
var dog = cat.getElementsByTagName("button")[0];
function mouse (){
    alert("mouse")
};
//no hide function
dog.addEventListener("click", mouse, false);
Ivan Ivanov
2014-07-29