可见性:在javascript中未正确检测到隐藏
在CSS中,将类的可见性属性设置为hidden,然后getElementsByClassName[i].style.visibility将不会将该类识别为hidden 只有在第二次执行onChange之后,css才会真正改变。第一个onChange调用无法识别css设置为可见性:在javascript中未正确检测到隐藏,javascript,css,Javascript,Css,在CSS中,将类的可见性属性设置为hidden,然后getElementsByClassName[i].style.visibility将不会将该类识别为hidden 只有在第二次执行onChange之后,css才会真正改变。第一个onChange调用无法识别css设置为可见性:hidden,而else应用“hidden”属性 为了证明这一点,当else替换为else if时,可见性将永远不会改变,因为它不会被视为可见或隐藏 但是,如果我使用style.visibility!=“隐藏”和st
可见性:hidden
,而else应用“hidden”属性
为了证明这一点,当else替换为else if时,可见性将永远不会改变,因为它不会被视为可见或隐藏
但是,如果我使用style.visibility!=“隐藏”和style.visibility!=“可见”
代码将正常工作
有人能告诉我为什么会发生这种情况,以及我如何正确设置js读取的属性吗?
元素。style
将只返回内联样式,即在元素的style=“…”
属性中定义的样式。要获取计算样式,请使用:
var inline=document.getElementById('inline'),
computed=document.getElementById('computed'),
derp=document.querySelector('.derp');
document.getElementById('getval')。addEventListener('click',function()
{
inline.textContent=derp.style.visibility;
computed.textContent=getComputedStyle(derp).visibility;
})
document.getElementById('toggle')。addEventListener('click',function()
{
derp.style.visibility=getComputedStyle(derp).visibility==‘可见’?‘隐藏’:‘可见’;
})
.derp
{
能见度:可见;
背景:#CFC;
高度:50px;
}
内联值:
计算值:
获取可见性切换div可见性
。样式
仅影响内联样式。您正在寻找。这个答案可能对您有所帮助。强烈建议您在问题中包含必要的代码,而不是将其链接作为外部资源…另外,是否有特殊原因要将
包装到
中,而不仅仅使用
?@Siguza可以与GetElementsByCassName一起使用?我尝试使用它,当我使用var elem=document.getElementsByClassName(toggle_类)时,每个索引都显示为未定义;对于(var i=0;i