[英]Uncaught TypeError: c.addEventListener is not a function…? javascript DOM Event
var c = document.getElementsByClassName("grid-item");
console.log("Connected");
console.log(c);
c.addEventListener("click",function(){
c.textContent = 'X';
})
c.addEventListener("dblclick",function(){
c.textContent = 'O';
})
Why my code is not working the addEventListener function show invalid为什么我的代码不起作用 addEventListener function 显示无效
.getElementsByClassName()
returns a list of elements.In order to attach an event listener, you need to use a loop or use the index of the element. .getElementsByClassName()
返回元素列表。为了附加事件侦听器,您需要使用循环或使用元素的索引。 Please check the below example:请检查以下示例:
var c = document.getElementsByClassName("grid-item"); console.log("Connected"); console.log(c); c[0].addEventListener("click",function(){ c[0].textContent = 'X'; }) c[0].addEventListener("dblclick",function(){ c[0].textContent = 'O'; })
<div class="grid-item">Hello</div>
document.getElementsByClassName("grid-item");
will give you an array of elements that have that, even if there's only 1.会给你一个元素数组,即使只有 1 个。
you can use document.getQuerySelector(".grid-item");
你可以使用
document.getQuerySelector(".grid-item");
instead and that will give you the single element相反,这将为您提供单一元素
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.