[英]Why console giving me result undefined
I Don't khow why my console is telling me that the result is undefined.I am learning DOM and found the problem on my first code which i don't understand我不知道为什么我的控制台告诉我结果未定义。我正在学习 DOM 并在我不明白的第一个代码中发现了问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script> let head = document.getElementsByClassName(".main"); console.log(head.textContent); let tail = document.getElementsByTagName("p"); console.log(tail.textContent); </script> </head> <body> <div class="main"> <p>hello</p> </div> </body> </html>
.main
to main
in getElementsByClassName
getElementsByClassName
从.main
更改为main
getElementsByClassName
returns a list so add [0]
to getElementsByClassName("main")
to get the first element getElementsByClassName
返回一个列表,因此将[0]
添加到getElementsByClassName("main")
以获取第一个元素 <div class="main"> <p>hello</p> </div> <script> let head = document.getElementsByClassName("main")[0]; console.log(head.textContent); let tail = document.getElementsByTagName("p")[0]; console.log(tail.textContent); </script>
document.getElementsByClassName
returns a collection of HTML elements, not a single element document.getElementsByClassName
返回 HTML 元素的集合,而不是单个元素document.getElementsByClassName
you should pass main
, not .main
document.getElementsByClassName
你应该通过main
,而不是.main
main
is probably not what you expectmain
的 div 的 textContent 可能不是您期望的querySelector
which is more simple (but slower) Here is a working version :querySelector
这是一个工作版本:<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="main">
<p>hello</p>
</div>
<script>
let head = document.querySelector(".main");
console.log(head.textContent);
let tail = document.querySelector("p");
console.log(tail.textContent);
</script>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.