学做网站培训课程介绍

当前位置:

jQuery滚动事件$(window).scroll()实现导航栏高度变化

有些网站的导航菜单的高度随着网页下拉变化,并且将网页恢复到顶部时,高度又恢复。效果如下图:

jQuery滚动事件$(window).scroll()实现导航栏高度变化

怎么实现这样的导航栏高度随着网页拖动变化呢?这就需要使用到jQuery滚动事件$(window).scroll()。下面学做网站论坛介绍一下实现方法。

方法/步骤

第一步:在网站导航代码底部放上以下的代码,用于监测导航菜单与滚动条的垂直位置距离,达到标注的高度后,就自动给导航菜单添加一个class类head_up;


<script>
$(window).scroll(function () {
var sT = $(window).scrollTop();
if (sT >50) {
$("#header").addClass("head_up");
} else {
$("#header").removeClass("head_up");
}
});
</script>

第二步:然后就是给新添加的CLASS类添加CSS样式,让它控制这个新类下的菜单的高度。当然后如果有LOGO和下拉二级菜单时,也需要更换样式;


/*鼠标下拉头部上缩*/
#header.head_up,#header.head_up .logo a{height: 70px;transition: 400ms;}
#header.head_up .logo img{max-width: 80%;head_uptransition: 400ms;}
#header.head_up .nav_box .topnav>li>a{height: 70px;line-height: 70px;transition: 400ms;}
#header.head_up .nav_box .topnav>li>.sub-menu{top: 70px;}

这样就可以实现下拉控制导航高度变化了。代码里transition: 400ms起到了渐变的效果。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关教程