サブメニューを含む垂直メニューがあり、親がクリックされた場合にのみサブメニューを表示し、一度に 1 つのサブメニューのみを表示したいと考えています。ただし、他の親メニューをクリックすると、そのサブメニューが表示されますが、前のサブメニューも表示されます。前のサブメニューを非表示にするにはどうすればよいですか?? 助けてください 。私はjavascriptが初めてです。これが私のhtml-css-javascriptコードです。
<div class="menu">
<ul >
<li><a href="#" onclick= "Myfunction('cert')">Contacts</a>
<div style="display: none;" id="cert">
<ul >
<li >Submenu 1</li>
<li>submenu 2</li>
</ul>
</div>
</li>
<li><a href="#" onclick="Myfunction('defect')">About</a>
<div style="display: none;" id="defect">
<ul >
<li>menu 1</li>
<li>menu 2</li>
</ul>
</div>
</li>
</ul>
脚本
function Myfunction(obj) {
var ele=document.getElementById(obj).style;
if(ele.display=="none") {
ele.display="block";
} else { ele.display="none"; }
}