這個問題在這里已經有了答案: querySelectorAll 和 getElementsBy* 方法回傳什么? (10 個回答) 33 分鐘前關閉。
我的大腦正在為為什么我不能選擇具有相同類(querySelector、querySelectorAll、getElementsByClassName 等)的多個元素而融化,并使用 classList 檢查是否只有一個 div 包含一個類。
我看過一些教程,它完全使用 getElementsbyClassName 作為示例,就像它們作業一樣。就我而言,在 Firefox 上,它是Uncaught TypeError: document.getElementsByClassName(...).classList is undefined
我給這些 div 一個 css 類切換 -
<div class="dot-container">
<div class="dot-button" id="1" onclick="activateDot(this.id)"></div>
<div class="dot-button" id="2" onclick="activateDot(this.id)"></div>
<div class="dot-button" id="3" onclick="activateDot(this.id)"></div>
<div class="dot-button" id="4" onclick="activateDot(this.id)"></div>
</div>
function activateDot(id) {
if(document.getElementsByClassName('dot-button').classList.contains('db-active')) {
console.log('bruh');
} else {
console.log('bruw');
}
document.getElementById(id).classList.toggle('db-active');
}
什么作業正在進行 -
function activateDot(id) {
document.getElementById(1).classList.remove('db-active');
document.getElementById(2).classList.remove('db-active');
document.getElementById(3).classList.remove('db-active');
document.getElementById(4).classList.remove('db-active');
document.getElementById(id).classList.toggle('db-active');
}
嗚嗚嗚
uj5u.com熱心網友回復:
getElementsByClassName 回傳 DOM 節點串列,而通過 ID 獲取元素回傳單個元素。您需要遍歷元素串列并為每個元素添加/切換所需的類
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/334313.html
標籤:
