JS 菜单伸缩问题

我用JS控制 菜单的伸缩,点击一下,展开,再点击,关闭
我的 mainMenu和subMenu是平行的

,所以下面的/2:
mainMenu的onclick="menu(i)"
[code="java"]
function menu(id)
{
var subEl=document.getElementById("divSub"+id);
var mainMenus = document.getElementById('divParent'+id).parentNode.childNodes.length/2;
for( var i=0; i< mainMenus; i++ )
{
alert(i+'-'+id);
if(i!==id)
{
if(subEl)
subEl.style.display="none";
}
else
{
if(subEl.style.display=='none') subEl.style.display='block';
else subEl.style.display='none';
}
}
}
[/code]

问题:我第一次点击后,不展开;当我第二次点击后,展开,但又关闭了?
没有弄明白!!

第15行 条件判断应该判断计算后的样式

获得计算后样式,ie用currentStyle,其他用getComputedStyle:
var style=test1.currentStyle||window.getComputedStyle(test1,null);

然后判断 style.display