带复选框的暗模式开关按钮



Console.log不显示。我的功能不起作用。我尝试了几种不同的功能和解决方案,但都不适用。问题出在哪里?有人能帮我吗?

这是我的html

<div class="switch-toggle darkmodecheckbox">
<input type="checkbox" name="checkbox" id="darkmodeonoff" />
<label for="darkmodeonoff"></label>
</div>

这是我的js;

var checkbox = document.querySelector("input[name=checkbox]");
console.log(checkbox);
checkbox.addEventListener("change", (e) => {
if (e.target.checked) {
darkmode();
console.log("Checkbox is checked..");
} else {
darkmodeoff();
console.log("Checkbox is not checked..");
}
});
兄弟,你的darkmode((和darkmodeoff((函数在哪里?试着像下面这样添加它们,看看你是否会收到警报?此外,如果您在控制台上看到任何警告,请分享
const darkmode = () =>{
alert('dark')
}
const darkmodeoff = () =>{
alert('light')
}

您可以让darkmode和darkmodeoff记录您想要的

const darkmode = () =>{
console.log("Checkbox is checked..");
}
const darkmodeoff = () =>{
console.log("Checkbox is not checked..");
}

然后使用if语句调用它

if (e.target.checked) {
darkmode();
} else {
darkmodeoff();
}
});

尝试使用classList.toggle:

checkbox.addEventListener("change", (e) => {
const example = document.querySelector('.containerThatYouWantUse')
example.classList.toggle('darkModeClass')
});

最新更新