亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

element.className僅返回“未定義”

element.className僅返回“未定義”

DIEA 2021-03-30 13:19:20
我正在嘗試創建一個交互式的小畫廊,人們可以在其中查看/選擇一些圖片。我用了一些來包含圖片,并在其中添加了一些來表示所選的照片。然后,我輸入了一些JS代碼,以使用的className檢查或取消選中照片。所以我的兩個問題是:該代碼未按預期運行。當我在導航器中跑動時,無法選擇任何圖片??刂婆_僅返回“未定義”,如下面的代碼中所述。這是一些代碼:這是我在JS中的第一次嘗試,我真的不明白什么是行不通的,所以我希望您能得到答案或至少對我有一些提示。:)
查看完整描述

3 回答

?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

如前面的答案中所述,getElementsByClassName方法返回具有您傳遞給該方法的類名稱的元素的HTMLCollection。如果您需要訪問任何項,則需要像數組一樣進行操作。


例如,獲取集合的第一個元素。


unselectedClass[0].className;

否則,您可以使用for循環來訪問集合中的每個元素。


for (var i = 0; i < unselectedClass.length; i++) {

    var class = unselectedClass[i].className;

}


查看完整回答
反對 回復 2021-04-15
?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

getElementsByClassName產生元素的集合。該className屬性在該列表中的特定元素上可用。不在列表本身上。


查看完整回答
反對 回復 2021-04-15
?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

問題是document.getElementsByClassName返回HTMLCollection和HTMLCollection。您應該檢查className其元素。


您可以遍歷它,然后獲取className每個元素


for(let i = 0;i<unslectedClass.length;i++){

   console.log(unselectedClass[i].className);

}

或HTMLCollection使用Spread Operator將轉換為實數組并使用forEach()


[...unselectedClass].forEach(x => console.log(x.className))


查看完整回答
反對 回復 2021-04-15
  • 3 回答
  • 0 關注
  • 312 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號