时间:2021-07-01 10:21:17 帮助过:5人阅读

该下拉菜单的HTML结构非常简单,基本的HTML结构如下:
<p id="top-bar" class="top-bar"> <p class="bar"> <button id="navbox-trigger" class="navbox-trigger"><i class="fa fa-lg fa-th"></i></button> </p> <p class="navbox"> <p class="navbox-tiles"> <a href="#" class="tile"> <p class="icon"><i class="fa fa-home"></i></p><span class="title">Home</span> </a> ...... </p> </p> </p>
CSS样式
在CSS样式中,顶部导航条.top-bar设置为固定高度50像素和相对定位,并给出一个较高的z-index值。
.top-bar {
height: 50px;
position: relative;
z-index: 1000;
}下拉菜单.navbox开始的时候是隐藏的,它采用绝对定位,通过translateY方法将它移动到导航条上方200像素的地方。
.top-bar .navbox {
visibility: hidden;
opacity: 0;
position: absolute;
top: 100%;
left: 0;
z-index: 1;
-webkit-transform: translateY(-200px);
-ms-transform: translateY(-200px);
transform: translateY(-200px);
-webkit-transition: all .2s;
transition: all .2s;
}接着在下拉菜单被激活的时候,它的透明度被设置回1,变为可见状态,并通过translateY方法将它移动回原来的位置。
.top-bar.navbox-open .navbox {
visibility: visible;
opacity: 1;
-webkit-transform: translateY(0);
-ms-transform: translateY(0);
transform: translateY(0);
-webkit-transition: opacity .3s, -webkit-transform .3s;
transition: opacity .3s, transform .3s;
}JavaScript
该特效中使用jQUery切换相应的class类和用于打开菜单按钮。
(function () {
$(document).ready(function () {
$('#navbox-trigger').click(function () {
return $('#top-bar').toggleClass('navbox-open');
});
return $(document).on('click', function (e) {
var $target;
$target = $(e.target);
if (!$target.closest('.navbox').length && !$target.closest('#navbox-trigger').length) {
return $('#top-bar').removeClass('navbox-open');
}
});
});
}.call(this));相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
jquery手风琴特效步骤详解
JQuery做出菜单左右滚动效果
以上就是jquery+CSS3实现下拉导航菜单功能的详细内容,更多请关注Gxl网其它相关文章!