Javascript 数组不能使用If语句

Javascript 数组不能使用If语句,javascript,html,css,arrays,if-statement,Javascript,Html,Css,Arrays,If Statement,关于StackOverFlow的最新信息-有一个简单的问题 如果If语句的条件为真,请告诉我为什么不更改Div元素的颜色。MeTest的显示属性是Block-而且,控制台中没有错误消息 以下是我的测试代码: var x=document.getElementsByClassName(“MeTest”); 如果(x[0].style.display=='block') { document.getElementsByClassName(“haveIt”)[1].style.backgroundC

关于StackOverFlow的最新信息-有一个简单的问题

如果If语句的条件为真,请告诉我为什么不更改Div元素的颜色。MeTest的显示属性是Block-而且,控制台中没有错误消息

以下是我的测试代码:


var x=document.getElementsByClassName(“MeTest”);
如果(x[0].style.display=='block')
{
document.getElementsByClassName(“haveIt”)[1].style.backgroundColor=“red”;
}
#MeTest{
位置:固定;
高度:200px;
宽度:200px;
背景色:#fdacc3;
}
div{
背景:#4dd329;
边框:1px纯白;
高度:200px;
宽度:200px;
显示:块;
}
梅特斯先生{
显示:块;
}

只有一个元素的类名为haveIt。因此,您应该进行以下更改:

document.getElementsByClassName("haveIt")[0]
此外,为了使您检查的条件为真,您应该为带有MeTest类的div定义一个带有显示块的样式


var x=document.getElementsByClassName(“MeTest”);
如果(x[0].style.display=='block')
{ 
document.getElementsByClassName(“haveIt”)[0].style.backgroundColor=“red”;
}
#MeTest{
位置:固定;
高度:200px;
宽度:200px;
背景色:#fdacc3;
}
div{
背景:#4dd329;
边框:1px纯白;
高度:200px;宽度:200px;
显示:块;
}
梅特斯先生{
显示:块;
}

var x=document.getElementsByClassName(“MeTest”)[0]; if(getComputedStyle(x).getPropertyValue(“显示”)==“块”) { document.getElementsByClassName(“haveIt”)[1].style.backgroundColor=“red”;
}点击F12,您应该会看到至少1个错误。实际上,您有一个“haveIt”类的div。因此,您应该使用“document.getElementsByClassName(“haveIt”)[0].style.backgroundColor=“red”;”而不是“document.getElementsByClassName(“haveIt”)[1].style.backgroundColor=“red”;”这是一个很好的建议Sumit-使用ComputedStyle将是一个好主意。谢谢那是完美的圣诞节!非常感谢!快速问题:我们能用这个方法改变多个元素的Css属性吗?示例:如果我在“MeTest”类元素中创建多个(几乎9个元素)元素,然后在J脚本中仅更改该数组中5个元素的颜色?这将是非常有帮助的-提前感谢!是的,这是可以做到的。您应该阅读css选择器,以便了解如何选择父元素的子元素。例如,如果您想获取一个div中的所有段落元素,您可以尝试这样的操作
document.queryselectoral(“div>p”)。如果您想使用MeTest类获取div中包含的所有段落元素,您可以尝试以下
document.queryselectoral(“div.MeTest>p”)。有关此方法的详细信息,
querySelectorAll
,请查看此处。选择所需的元素,然后您可以相当轻松地设置其样式属性,正如我们前面所做的。嘿,谢谢Christos!我看到,在我关于语句的第一个问题中,您在HTML DOM中更改为“显示为块”-当我在Css样式表中调用该元素并将“显示”更改为“块”时,它不会以这种方式工作。你知道为什么会这样吗?