隐藏的div在页面加载时闪烁

时间:2009-06-26 03:32:48

标签: javascript ruby-on-rails

在我的Rails应用程序中,我试图在下面的Javascript函数中隐藏页面加载时的div(框)。此函数循环使用一系列具有相同名称的复选框(cb)。如果选中任何复选框,则应显示div。

function BoxCheck(cb,box){
var cbs=document.getElementsByName(cb);
var d=document.getElementById(box);
d.style.display = 'none'; 
var flag_check=0

for (var zxc0=0;zxc0<cbs.length;zxc0++){
  if (cbs[zxc0].checked){
    flag_check=flag_check+1
    } else
    { }
}
if (flag_check > 0){
    d.style.display = 'block'; 
    document.getElementById('multi_control_spacer').style.display = 'block';      
 } else {
    d.style.display = 'none'; 
    document.getElementById('multi_control_spacer').style.display = 'none'; 
 }
}

该函数在加载时触发:

<body onload="javascript:BoxCheck('doc_ids[]','multi_control');">

问题是当没有选中复选框时,div会暂时闪烁,然后消失。

这是CSS:

#multi_control {
    padding: 10px;
    background: #333;
}

我尝试将css设置为display:none,但是我似乎无法让它切换回显示:使用Javascript阻止。

1 个答案:

答案 0 :(得分:7)

为什么不呢?你试过了吗?

element.style.display = 'block';

如何将style =“display:none”放入div标签中,以便隐藏起来?