【发布时间】:2016-11-20 07:43:17
【问题描述】:
我花了几个小时来解决我的问题,但还没有解决:/
我制作了this pen,它工作正常。这是一个带有打开/关闭按钮的基本滑动菜单(基于此jsfiddle),但我喜欢添加一个功能,允许用户通过单击菜单外部的任何位置来关闭菜单。
代码如下:
HTML
<div class='header'>
<span class='button'>☰</span>
<span class="logo">LOGO HERE</span>
</div>
<div class='side-panel'>
<nav>
<ul>
<li><a href='#'>ITEM 1</a></li>
<li><a href='#'>ITEM 2</a></li>
<li><a href='#'>ITEM 3</a></li>
</ul>
</nav>
</div>
<div class='content'>CONTENT HERE</div>
JS
$('.button').click(function(){
if($(this).hasClass('active')){
$(this).removeClass('active');
$(this).html("☰");
$('.side-panel').animate({
right:"-220px"
});
$(this).animate({
right:"0"
});
}
else{
$(this).addClass('active');
$(this).html("╳");
$('.side-panel').animate({
right:"0",
});
$('.button').animate({
right:"220px"
});
}
});
我在这里发现了一些非常有趣的话题,我尝试添加这个:
$(document).click(function(){
if ($('.button').hasClass('active')){
$(this).removeClass('active');
}
});
但是没有用。我对 Js 的了解是基本的(就像我的英语(对不起)),我很确定我离解决方案不远,但我已经花了 3 个多小时,我开始绝望了;)我希望我是足够清楚,但如果您需要更多详细信息,请随时询问。干杯,感谢您的帮助。
【问题讨论】: