先上代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>测试</title>
</head>
<body>
<div class="div1" id="div1">1231</div>
<!--<script type="text/javascript" src="Test.js"></script>-->
<script type="text/javascript">
var div1=document.getElementsByClassName("div1");
console.log(div1.innerText);
</script>
</body>
</html>
执行结果:
控制台输出undefined(未定义)。
首先,我来讲一下这是为什么?
因为在原生JS中,类名可以相同,所以防止误选,用类名获取对象,获取到的对象返回的是一个数组,所以要在变量div1后加上[0],表示选择类名为div1的第一个类对象。
改正后的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>测试</title>
</head>
<body>
<div class="div1" id="div1">1231</div>
<div class="div1">123</div>
<!--<script type="text/javascript" src="Test.js"></script>-->
<script type="text/javascript">
//第一种方式
//var div1=document.getElementsByClassName("div1")[0];
//console.log(div1.innerText);
//第二种方式
var div1=document.getElementsByClassName("div1");
console.log(div1[0].innerText);
console.log(div1[1].innerText);
</script>
</body>
</html>
控制台输出:
问题解决了,欢迎点赞留言关注!!!????????????