我需要知道当用户单击链接或菜单外部时,如何关闭此菜单。我目前的猜测是,当用户单击链接或菜单背景区域之外时,使用js或jquery取消选中复选框可能是最好的方法,但我对javascript不太了解,所以我不知道如何做lol。 代码:
#mobilemenu {
position: fixed;
background-color: red;
background-size: cover;
top: 0px;
right: -50%;
height: 100%;
width: 50%;
z-index: 0;
transition: .5s;
}
#mobilemenu ul {
text-align: right;
margin-right: .5em;
margin-top: 3em;
list-style-type: none;
font-size: 1.25em;
}
#menuicon {
position: fixed;
z-index: 4;
right: 9px;
margin-top: 15px;
}
#menuicon i {
cursor: pointer;
background-color: white;
font-size: 12pt;
padding: 3px;
font-weight: bold;
color: black;
}
input[type="checkbox"]:checked~#mobilemenu {
transform: translateX(-100%);
}
input {
display: none;
}
<input type="checkbox" id="myInput">
<label for="myInput">
<nav id="menuicon">
<i>Menu</i>
</nav>
</label>
<aside id="mobilemenu">
<ul>
<li>
<a href="#">Link1</a>
</li>
<li>
<a href="#">Link2</a>
</li>
<li>
<a href="#">Link3</a>
</li>
<li>
<a href="#">Link4</a>
</li>
</ul>
</aside>
var bg = document.querySelector( '#mobilemenu' ); if( e.target != checkbox && e.target != icon && e.target != bg ) {
非常感谢你,你是老板!!! - gabriel0369