Problem: Die Änderungsfunktion von Javascript funktioniert nicht
P粉654894952
P粉654894952 2023-09-06 00:04:57
0
1
533

我在使用 JavaScript 更改文本翻译时遇到问题.

这是html代码

document.getElementById('slider-en1').style.visibility = 'hidden'; document.getElementById('slider-id1').style.visibility = 'visible'; Funktion changeFunc() { var selectBox = document.getElementById("Language_Select"); var selectedValue = selectBox.options[selectBox.selectedIndex].value; // alarm(selectedValue); if (selectedValue == 'id') { document.getElementById('slider-en1').style.visibility = 'visible'; document.getElementById('slider-id1').style.visibility = 'hidden'; } if (selectedValue == 'en') { document.getElementById('slider-en1').style.visibility = 'visible'; document.getElementById('slider-id1').style.visibility = 'hidden'; } }
 

Indonesien Indonesien Indonesien

de de de

我尝试使用 JavaScript 显示和隐藏内容,但我的代码无法正常工作

P粉654894952
P粉654894952

Antworte allen (1)
P粉046387133

UL LI不是select的有效子元素。

然而,我简化了您的代码以提高效率。

我为每个语言div添加了一个data属性。该属性保存表示内容的语言值。我还创建了一个名为"active"的css类,它将显示适当的语言div,并将语言div默认隐藏。

然后,我使用事件处理程序而不是内联事件(onchange),这是更好的方法,也将帮助您在将来做更多事情。

在我的事件监听器中,我只是获取所选值。然后,我查看是否有任何带有active类的语言div,如果有,则删除它。然后,我找到并将active类添加到适当的语言div。

这个过程将帮助您扩展代码,因为您不需要关心if语句。

let langSelect = document.querySelector("#language_select"); langSelect.addEventListener("change",(e) => { let shown = document.querySelector(".active[data-lang]"); if(shown)shown.classList.remove("active"); document.querySelector(`[data-lang='${langSelect.value}']`).classList.add("active") });
[data-lang]{visibility:hidden} .active[data-lang]{visibility:visible;}
 

indonesia indonesia indonesia

en en en

    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!