我试图通过链接来切换隐藏菜单。但是当我点击链接时,它重新打开了隐藏菜单而不是关闭它。
以下是我的期望操作:
以下是我的期望操作:
当我点击
labelLink
时,如果hiddenBox
的display = 'none'
,则将其更改为display = 'block'
;如果hiddenBox
的display = 'block',
则通过blur()
删除其焦点并将其设置为display='none'
当我在拥有焦点的
hiddenBox
之外点击时,将hiddenBox
的display ='none'
(这部分功能正常。)
<ul>
<li>
<a id="labelLink" href="#"
onclick="
if(document.getElementById('hiddenBox').style.display === 'block'){
document.getElementById('labelLink').focus();
document.getElementById('hiddenBox').style.display ='none';
}
else{
document.getElementById('hiddenBox').style.display = 'block';
document.getElementById('hiddenBox').focus();
}
return false;"
>
Click Me
</a>
<div id="hiddenBox" tabindex="-1"
onblur="document.getElementById('hiddenBox').style.display ='none';"
>
I was hidden
</div>
</li>
</ul>