gpt4 book ai didi

javascript - 未捕获的 TypeError : button. addEventListener 不是函数

转载 作者:行者123 更新时间:2023-11-28 02:27:22 25 4
gpt4 key购买 nike

我正在自学 js,我是编程新手。我被困在下面的代码上,任何帮助将不胜感激:

<div id="container">
<h1>To-Do list</h1>
<input type="text">
<ul>
<li><span>X</span> one</li>
<li><span>X</span> two</li>
<li><span>X</span> three</li>
</ul>
</div>

Javascript 部分:

let li = document.getElementsByTagName("li");

let button = document.getElementsByTagName("span");

button.addEventListener("click", function() {
console.log("clicked");
})

这会抛出一个错误,说明它不是一个函数。我的错误在哪里?

最佳答案

函数Element.getElementsByTagName()返回元素的 HTMLCollection,您需要遍历它以绑定(bind)事件。

let li = document.getElementsByTagName("li");
let buttons = document.getElementsByTagName("span");

Array.from(buttons).forEach(b => {
b.addEventListener("click", function() {
console.log("clicked");
});
});
<div id="container">
<h1>To-Do list</h1>
<input type="text">
<ul>
<li><span>X</span> one</li>
<li><span>X</span> two</li>
<li><span>X</span> three</li>
</ul>
</div>

关于javascript - 未捕获的 TypeError : button. addEventListener 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53164620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com