侧栏菜单滑动及返回顶部效果

侧栏菜单

当点击侧栏菜单时,侧栏从右侧平缓划出并且遮罩层使整个页面变暗。

选择侧栏触发器 $('#sidebar_trigger') ,监听点击事件触发 showSideBar() ,使遮罩层$('.mask')$('#sidebar') 都显示出来。
然后再对遮罩层$('.mask') 监听点击事件触发hideSideBar(),使遮罩层$('.mask')$('#sidebar') 隐藏。

       function showSideBar(){
            // console.log('clicked');
            mask.fadeIn();          //显示mask
            sidebar.css('right',0);    //显示sidebar
            // sidebar.css('transform','translate(0,0)');
        }

        function hideSideBar(){
            mask.fadeOut();           //隐藏mask
            sidebar.css('right',-sidebar.width());//width()     //隐藏sidebar
            // sidebar.css('transform','translate('+'sidebar.width()'+'px'+',0)');
        }

        // sidebar_trigger.on('click',showSideBar());
        sidebar_trigger.on('click',showSideBar);
        mask.on('click',hideSideBar);

返回顶部

使用jQuery的动画效果函数 animate()来实现平滑滚动到页面顶部的动画效果.

同样,对$('.to-back-top') 监听点击事件,选择$('html,body'),向animate() 中传入一个对象,使滚动条进行滚动到位置0.

backButton.on('click',function(){
            // console.log('back back');
            $('html,body').animate({
                scrollTop:0
            },800);
        });

另外,再监听window的scroll点击事件,即在鼠标滚动的过程中判断已滚动部分的高度值和窗口高度值的大小。如果已滚动的部分高于窗口的高度,显示返回按钮;否则,隐藏返回按钮。

var windowHeight=$(window).height();  //固定值
$(window).on('scroll',function(){
            if($(window).scrollTop() > windowHeight)
                backButton.fadeIn();
            else
                backButton.fadeOut();
        })

由于该事件是在滚动过程中才会被监测,所以重新刷新页面时,返回顶部按钮是显示着的。需要对先让window自动触发scroll事件$(window).trigger('scroll');。最好的解决方式是在css样式中使该按钮display:none;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 内容抽屉菜单ListViewWebViewSwitchButton按钮点赞按钮进度条TabLayout图标下拉刷新...
    皇小弟阅读 46,979评论 22 665
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,205评论 4 61
  • 世界上几乎每个人都看电视,但没有一部电视剧呈现的是真实的人生。 你要是每天花大量时间看电视剧,那你会发现自己对这个...
    438fd6551c05阅读 3,911评论 1 8
  • 赵睿老师:清华大学数学系本科,硕士。香港中文大学数学系博士。现在深圳从事教育工作。 1.如果考上清华北大算是人生的...
    旺旺老师阅读 5,422评论 0 0
  • 完整处,瑕疵不断 完美处,风波不断 缺了角,反复挣扎 留下憾,尽力摆脱 天下熙熙为何往? 一轮明月有上下 上时不曾...
    以行阅读 1,716评论 5 4