jQuery实现视窗上、下滚动导航隐藏、出现【二】

jQuery实现视窗上、下滚动导航隐藏、出现【二】

滚动导航

这里的导航栏隐藏和出现我们用的是Headroom.js插件。

Headroom.js是一个轻量级、高性能的JS小工具(不依赖不论什么工具库。),它能在页面滚动时做出响应。

此页面顶部的导航条就是一个鲜活的案例,当页面向下滚动时,导航条消失,当页面向上滚动时,导航条就出现了。

Headroom.js有什么用?

1、固定页头(导航条)能够方便用户在各个页面之间切换。可是这也会带来些问题…

2、大屏幕一般都是宽度大于高度的,也就是说屏幕高度要少一些.固定页头会占用一部分本来能够用于展示内容的区域。

3、小屏幕通常是高度较大,可是别忘了,屏幕本来就小,页头再占用一部分的话,屏幕可用于展示内容的区域当然还是少。

4、Headroom.js 能帮你把不须要的页面元素在合适的时间展示出来,让用户花很多其它时间关注你页面上的内容。

Headroom.js怎样使用

1、首先须要引用headroom.js https://www.bootcss.com/p/headroom.js/

2、通过css的trasition属性达到变换效果。加入例如以下CSS:

.my-animated {
  -webkit-animation-duration: .5s;   /*表示动画执行的时间*/
  -webkit-animation-fill-mode: both; /*规定动画在播放前和之后其动画效果是否可见*/
  animation-fill-mode: both
}
 .my-slideDown {
  -webkit-animation-name: my-slideDown;   /*规定需要绑定到选择器的 keyframe 名称。。*/
  animation-name: my-slideDown
}
.my-slideUp {
  -webkit-animation-name: my-slideUp;
  animation-name: my-slideUp
}
@-webkit-keyframes my-slideUp {
  0% {
    transform: perspective(100px) rotateX(0deg);
    //-webkit-transform: translateY(0);
  }

  100% {
    transform: perspective(100px) rotateX(-90deg);
    //-webkit-transform: translateY(-250%);
  }
}
@-webkit-keyframes my-slideDown {       /*表示匀速地执行动画*/
  0% {
    transform: perspective(100px) rotateX(-90deg);
    //-webkit-transform: translateY(-250%);
  }

  100% {
    transform: perspective(100px) rotateX(0deg);
    //-webkit-transform: translateY(0);
  }
}

3、之后加入以下的js代码,获取导航栏".header-bottom",并为它添加动画效果,动画效果可根据自己喜欢来定制。

    function Animated(){
        let headerBottom = document.querySelector(".header-bottom");
        let headroom =  new Headroom(headerBottom, {
            //下面是自定义的类名
            classes: {
                initial: "my-animated",  // 当元素初始化后所设置的class
                pinned: "my-slideDown", // 向上滚动时设置的class
                unpinned: "my-slideUp" // 向下滚动时所设置的class
            }
        });
        headroom.init();
    }
    Animated();

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值