問題描述
今天使用源生js實現 點擊按鈕關閉對應div功能(有多個按鈕,相同class名),出現onclick無效情況。
問題原因
- 使用
getElementById
獲取元素的結果是:當前元素 - 使用
getElementsByClassName
獲取元素的結果是:相同class名元素數組。
解決辦法
var div = document.getElementById("div");
console.log("getElementById: ");
console.log(div);
var btn = document.getElementsByClassName("btn");
console.log("getElementsByClassName: ");
console.log(btn);
// 解決辦法
for(var i = 0;i < btn.length;i++){
btn[i].onclick=function(){
// 通過js實現div隱藏
div.style.display = "none";
};
}