文 - 篇  访客 -

jQuery实现页面滚动时顶部动态显示隐藏


  分类:04 技术开发  / 
更新:2023-08-14 09:48:54  /  创建:2023-08-04 16:06:47
不要删除

很多时候你会看到页面上有一个始终固定在网页顶部的导航菜单,当页面向下滚动的时候,导航菜单动态隐藏,页面滚动到顶部时,导航菜单动态显示,淘宝也采用过此效果,很不错,当然,里面使用了CSS3动画效果,不支持低版本浏览器。代码相当的简单,只需几行就搞定。

jquery教程:jQuery实现页面滚动时顶部动态显示隐藏

引入核心文件

1

<script src="http://libs.useso.com/js/jquery/1.11.1/jquery.min.js"></script>

构建html,margint这个div中为了出现滚动条而建,并无实际作用。

1

2

<div class="top-title">这是顶部导航条</div>

<div class="margint"><p>滚动看效果</p><p>滚动看效果</p></div>

写入CSS

.top-title {background:#e74c3c;color:white;font-size:24px;padding:5px;text-align:center;position: fixed;left:0;top:0;width:100%;transition: top .5s;}

.hiddened{top: -90px;}

.showed{top: 0;z-index: 9999;}

top-title中定义了transition: top .5s;是指.5S时间内动画展示top方向数值的改为。如添加hidden类后,top-title会在0.5s内从top的0动画缓冲到-90PX。

写入JS


$(function(){  

    var winHeight = $(document).scrollTop();

    $(window).scroll(function() {

        var scrollY = $(document).scrollTop();// 获取垂直滚动的距离,即滚动了多少

        if (scrollY > 550){ //如果滚动距离大于550px则隐藏,否则删除隐藏类

            $('.top-title').addClass('hiddened');

        } 

        else {

            $('.top-title').removeClass('hiddened');

        }

        if (scrollY > winHeight){ //如果没滚动到顶部,删除显示类,否则添加显示类

            $('.top-title').removeClass('showed');

        } 

        else {

            $('.top-title').addClass('showed');

        }              

     });

});

转载请注明:jQ酷 » jQuery实现页面滚动时顶部动态显示隐藏

 [](http://www.jqcool.net/demo/201411/jquery-scroll/)

下载地址:本站下载 | 百度云


不要删除

是日已过,命亦随减,如少水魚,斯有何乐?