原生JS用類名獲取對象報錯的解決方案

先上代碼:

<!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>

控制檯輸出:
在這裏插入圖片描述
問題解決了,歡迎點贊留言關注!!!😘😘😘

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章