3 回答
TA贡献1911条经验 获得超7个赞
在您的情况下,将 ID 添加到要更改的文本中:
<label class="custom-control-label" id="modelLabel" for="darkSwitch">Dark Mode</label>
并按如下方式更新您的 resetTheme() 函数:
function resetTheme() {
var modelLabel = document.getElementById("modelLabel");
if(darkSwitch.checked){
(document.body.setAttribute("data-theme", "dark"),
localStorage.setItem("darkSwitch", "dark"));
modelLabel.innerHTML = "Light Mode";
}
else{
(document.body.removeAttribute("data-theme"),
localStorage.removeItem("darkSwitch"));
modelLabel.innerHTML = "Dark Mode";
}
}
希望能帮助到你 :)
TA贡献1877条经验 获得超6个赞
您可以从标签中删除文本并使用 css:before在其中添加内容。
[for="darkSwitch"]:before{
content:'Dark Mode'
}
[data-theme="dark"] [for="darkSwitch"]:before{
content:'Light Mode'
}
演示在https://jsfiddle.net/ju2n3svy/
TA贡献1789条经验 获得超10个赞
为标签提供一个 ID 并使用 DOM 更改文本。
<label class="custom-control-label" for="darkSwitch" id="darkLabel">Dark Mode</label>
var label=document.getElementById("darkLabel");
label.innertHTML="Dark Mode"; //If Light Mode
label.innertHTML="Light Mode"; //If Dark Mode
添加回答
举报