【发布时间】:2014-03-27 19:33:37
【问题描述】:
我正在尝试使用按钮切换 (toggleClass) 实现滑入式菜单。我不确定如何添加动画。我试图让它从顶部滑入(a.css 中的动画名称是slideInDown)
这是我的demo,所以你可以看看我有什么。
HTML
<!-- ========== Navigation ========== -->
<a type="button" class="btn btn-blue nav-btn"><i class="fa fa-bars"></i></a>
<div class="navbar navbar-fixed-top closed" role="navigation" id="top-header">
<div class="container">
<ul class="nav navbar-nav">
<li class="active"><a class="scroll" href="#home">Home</a></li>
<li><a class="scroll" href="#services">Services</a></li>
<li><a class="scroll" href="#works">Works</a></li>
<li><a class="scroll" href="#about">About</a></li>
<li><a class="scroll" href="#timeline">Timeline</a></li>
<li><a class="scroll" href="#blog">Blog</a></li>
<li><a class="scroll" href="#contact">Contact</a></li>
</ul>
</div>
</div>
<!-- ========== /Navigation ========== -->
JS
// Open/close menu when button is clicked
$(".nav-btn").click(function () {
$(".navbar").toggleClass('closed open');
return true;
});
CSS 片段
.open {
display:block;
visibility:visible;
}
.closed {
display:none;
visibility:hidden;
}
(这是animate.css,我通常用于该网站)
编辑:根据@stewbydoo 的回答(非常感谢!)我想出了:
// Open/close menu when button is clicked
$(".nav-btn").click(function () {
if($(".navbar").hasClass("closed")){
$(".navbar").removeClass("closed");
$(".navbar").addClass("animated slideInDown");
}else{
$(".navbar").removeClass("animated slideInDown");
$(".navbar").addClass("closed");
}
});
看起来有点凌乱,但滑下来就好了。现在我需要弄清楚如何让它再次(很好地)向上滑动:)
【问题讨论】:
-
你想让它从左上右下滑入吗?
-
在问题中发布您的代码。
-
@stewbydoo 从顶部(但最终没关系)
标签: javascript jquery html css animation