2 回答

TA贡献1876条经验 获得超5个赞
getElementsByClassName返回一个集合而不是单个元素,因此 id 没有 DOM 元素的属性和方法。
你可以尝试像这样迭代:
var engBtn = document.getElementById("eng-btn");
engBtn.addEventListener("click", function() {
// document.getElementsByClassName("eng").style.display = "inline";
// document.getElementsByClassName("rus").style.display = "none";
changeVisibility('rus', 'none');
changeVisibility('eng', 'inline');
})
var rusBtn = document.getElementById("rus-btn");
rusBtn.addEventListener("click", function() {
changeVisibility('rus', 'inline');
changeVisibility('eng', 'none');
// document.getElementsByClassName("rus").style.display = "inline";
// document.getElementsByClassName("eng").style.display = "none";
});
function changeVisibility(className, visibility) {
const collection = document.getElementsByClassName(className);
for(let i = 0 ; i < collection.length; i++) {
collection[i].style.display = visibility;
}
}

TA贡献1795条经验 获得超7个赞
getElementsByClassName返回一个集合而不是单个元素,因此 id 没有 DOM 元素的属性和方法。
你可以尝试像这样迭代:
var engBtn = document.getElementById("eng-btn");
engBtn.addEventListener("click", function() {
// document.getElementsByClassName("eng").style.display = "inline";
// document.getElementsByClassName("rus").style.display = "none";
changeVisibility('rus', 'none');
changeVisibility('eng', 'inline');
})
var rusBtn = document.getElementById("rus-btn");
rusBtn.addEventListener("click", function() {
changeVisibility('rus', 'inline');
changeVisibility('eng', 'none');
// document.getElementsByClassName("rus").style.display = "inline";
// document.getElementsByClassName("eng").style.display = "none";
});
function changeVisibility(className, visibility) {
const collection = document.getElementsByClassName(className);
for(let i = 0 ; i < collection.length; i++) {
collection[i].style.display = visibility;
}
}
添加回答
举报