Javascript 如何在onclick属性中创建checkbox语句?
我已经想了两天了,但是我找不到任何解决办法 我想要的是,每次我选中复选框时,元素的属性都会改变(即主体的颜色)。但它只在选中复选框时起作用,而在取消选中复选框时不起作用Javascript 如何在onclick属性中创建checkbox语句?,javascript,html,css,Javascript,Html,Css,我已经想了两天了,但是我找不到任何解决办法 我想要的是,每次我选中复选框时,元素的属性都会改变(即主体的颜色)。但它只在选中复选框时起作用,而在取消选中复选框时不起作用 var checkboxStatus=document.getElementById(“menuCheckBox”); 函数menuToggle(){ if(checkboxStatus.checked=true){ document.body.style.background=“青色”; }否则{ document.body
var checkboxStatus=document.getElementById(“menuCheckBox”);
函数menuToggle(){
if(checkboxStatus.checked=true){
document.body.style.background=“青色”;
}否则{
document.body.style.background=“洋红色”;
}
}
menuToggle()代码>
您走在正确的轨道上,只是错误地使用了运算符。您使用了一个=而不是两个。布尔语句(比较)需要两个等号
var checkboxStatus=document.getElementById(“menuCheckBox”);
函数menuToggle(){
if(checkboxStatus.checked==true){
document.body.style.background=“青色”;
}否则{
document.body.style.background=“洋红色”;
}
}
menuToggle()代码>
问题:
在这一行
if (checkboxStatus.checked = true) {
解决方案:
有两种方法可以解决您的问题:
改为如下:if(checkboxStatus.checked==true){
删除=
如下:if(checkboxStatus.checked){
解释:
=
是赋值运算符。它将变量(左侧)设置为值(右侧)
=
是比较运算符。它将告诉您无论操作数的类型如何,两个值是否相等
阅读更多信息:
-
-
重构代码:
var checkboxStatus=document.getElementById(“menuCheckBox”);
函数menuToggle(){
const backGroundCorlor=checkboxStatus.checked?“青色”:“洋红”;
document.body.style.background=背景颜色;
}
菜单切换();
给你
函数colorchange(){
if(document.getElementById('checker').checked){
document.body.style.backgroundColor=“橙色”;
}否则{
document.body.style.backgroundColor=“灰色”;
}
}
正文{
背景颜色:灰色;
}
这能回答你的问题吗?如果你需要帮助,请告诉我。@Vladd Cantor