Javascript if / else问题

时间:2010-12-17 17:38:36

标签: javascript if-statement

我想打开一个div并使用此功能将其关闭,但它不起作用的地方是错误的部分我无法解决它,任何人都可以帮助我吗?

function Element(id)
{    
    if(document.getElementById(id).style.display = 'block')
    {
        document.getElementById(id).style.display = 'block';
    }
    else
    {
        document.getElementById(id).style.display = 'none';
    }
}

5 个答案:

答案 0 :(得分:3)

您的if语句指定了属性而不是比较它 将=更改为===

答案 1 :(得分:3)

我建议你用三元运算符重写它,它更具可读性和可维护性:

var element = document.getElementById(id);
element.style.display = element.style.display === 'block' ? 'none' : 'block';

答案 2 :(得分:1)

function Element(id) { 
        if( document.getElementById(id).style.display == 'block') {
             document.getElementById(id).style.display = 'block';
       } else { document.getElementById(id).style.display = 'none'; }
} 

答案 3 :(得分:1)

谢谢!这个工作了!但我改变了if里面的代码。因为它说如果你发现块应该是无。

function Element(id) { 
    if( document.getElementById(id).style.display == 'none') {
      document.getElementById(id).style.display = 'block';
    } else { 
      document.getElementById(id).style.display = 'none'; 
    } 
}

答案 4 :(得分:0)

您不需要else或三元运算符,因为您的第一个条件无效。所以这就足够了......

if(document.getElementById(id).style.display != 'block')
{
    document.getElementById(id).style.display = 'none';
};