Javascript 条件重定向问题

Javascript 条件重定向问题,javascript,Javascript,我有两个条件语句,一个有效,一个无效。我花了三天时间想弄清楚原因。希望这里有人能对这个问题有所了解 工作语句-此语句只是在display:none和:block之间切换div case 'addressSearch': var div = document.getElementById('addsearch'); if (div.style.display !== 'block') { div.style.display =

我有两个条件语句,一个有效,一个无效。我花了三天时间想弄清楚原因。希望这里有人能对这个问题有所了解

工作语句-此语句只是在display:none和:block之间切换div

case 'addressSearch':
        var div = document.getElementById('addsearch');
           if (div.style.display !== 'block') {
                div.style.display = 'block';
            }
            else {
                div.style.display = 'none';
            }
这是断开的一个-它应该根据div的display属性指向不同的页面。它重定向,但不取决于display的值。我不知道为什么,但是div.style.display总是一个空字符串

function loginCheck(){
var div = document.getElementById('loin');
    if (div.style.display !== 'block') {
        window.location = '/login.shtml';
        }
    else {
        window.location = '/calendar.shtml';
    }
};
css是#loin{display:block;},html是

    <div class="button" id="tmcb"  onclick="loginCheck()">To My Calendar</div>

这是有效的属性返回分配给
style
HTML属性的内容,而不是从分配给HTML元素的CSS类中计算出来的样式。如果使用jQuery,则可以使用
$('#loin').css('display')

如果您不想使用jQuery,而目标是IE9+,那么可以使用。我不知道IE8及以下版本的解决方案,但谷歌应该帮你解决这个问题


您也可以简单地使用
style=“display:block”
而不是CSS类,从而避免所有这些计算样式的麻烦。

谢谢。这让我走上了正确的道路。为了提高我的能力,我暂时不使用jquery。
        if (getComputedStyle(div, null).display !== 'block') { //something };