getElementsByTagName问题
来源:4-8 编程练习
青铜的奇妙世界
2020-12-22 19:39:17
# 具体遇到的问题
因为试了这个方法getElementsByTagName,执行不了后发现这个方法会生成一个数组并把script里的内容也算到DOM里面,可以这样理解吗?
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>HTML事件</title>
</head>
<body>
<!-- 此处写代码 -->
<input type="button" value="点击我试试" id="btn">
<script>
var btn = document.getElementsByTagName('input')
// var btn = document.getElementById("btn")
console.log(btn)
btn.onclick=function(){
this.style.backgroundColor='green';
}
</script>
</body>
</html>
2回答
同学你好,通过getElementsByTagName标签名获取元素,结果是一个类数组对象。不是把script的内容也算在dom中,而是input绑定了点击事件,所以会显示
类数组对象这种情况可以通过索引[]获取一个元素,参考:
效果
自己测试下,祝学习愉快!
好帮手慕夭夭
2020-12-23
同学你好,理解的稍微有点偏差,这里生成的不是数组,叫做类数组对象(简称类数组)。如果想要获取类数组中的dom对象,可以通过数组下标(索引)的方式获取。示例:
祝学习愉快~
相似问题