【问题标题】:getElementsByTagName is not working with DOM method addEventListener [duplicate]getElementsByTagName 不适用于 DOM 方法 addEventListener [重复]
【发布时间】:2021-02-27 14:56:41
【问题描述】:

var x=document.getElementsByTagName("button");
x.addEventListener("click", function() {alert('You Just Clicked !!');});
<!DOCTYPE html>
<html>
<head>
<title>Its Practice</title>
</head>
<body>
<h1>Hi there</h1>
<button>Click Me !!</button>
<script type="text/javascript" src="practice2.js"></script>
</body>
</html>

【问题讨论】:

  • document.getElementsByTagName 是一个类似集合的数组。在其上使用for loop 来访问每个元素并为其添加事件监听器
  • 感谢 @brk 帮助我摆脱这种困惑。

标签: javascript dom addeventlistener getelementsbytagname


【解决方案1】:

getElementsByTagName函数返回一个对象列表, 根据您的代码 x 将是 HTMLCollection [button] 0: button length: 1 所以你不能在 x 上调用addEventListener

改用这个:

x[0].addEventListener("click", function() {alert('You Just Clicked !!');});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-20
    • 1970-01-01
    相关资源
    最近更新 更多