jquery实现的返回顶部+侧边栏功能

本文介绍了一个简单的网页侧边栏与返回顶部按钮的实现方法,包括HTML结构定义、CSS样式设置及JavaScript交互逻辑。侧边栏采用固定定位,并通过过渡效果实现展开与收起;返回顶部按钮同样采用固定定位,当页面滚动到一定位置时显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

html代码:

<div class="mask"></div>
<div id="sidebar">
    <ul>
        <li><a href="">item1</a></li>
        <li><a href="">item2</a></li>
        <li><a href="">item3</a></li>
        <li><a href="">item4</a></li>
        <li><a href="">item5</a></li>
    </ul>
</div>

<button class="back-to-top">返回顶部</button>

css代码:

#sidebar{
    position: fixed;
    top:0;
    right: -300px;
    bottom: 0;
    width: 300px;
    background: #333;
    color: #fff;
    padding: 20px 0;
    transition: right 0.5s;

}

#sidebar ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

#sidebar ul a{
    color: #fff;
    display: inline-block;
    padding: 10px 30px ;
    width: 100%;

}

#sidebar ul a:hover{
    background: #444;
}

.mask{
    position: fixed;
    top:0;
    right: 0;
    bottom: 0;
    left:0;
    background: rgba(0,0,0,0.2);
    display: none;
}

.back-to-top{
    position: fixed;
    bottom: 30px;
    right: 30px;
    border: 1px solid #888;
    border-radius: 5px;
}


js代码:

;$(function () {
    'use strict';

    var sidebar=$('#sidebar'),
        sidebar_trigger=$('#sidebar-trigger'),
        mask = $('.mask'),
        back_to_top = $('.back-to-top');

    function show_sidebar() {
        mask.fadeIn();
        sidebar.css({'right':'0'});
    }

    function hide_sidebar() {
        mask.fadeOut();
        sidebar.css({'right':-sidebar.width()});
    }

    function back() {
        $('html,body').animate({
            'scrollTop':'0'
        },800);
    }

    sidebar_trigger.on('click',show_sidebar);
    mask.on('click',hide_sidebar);
    back_to_top.on('click',back);

    $(window).on('scroll',function () {
       if($(window).scrollTop() > 0){
           back_to_top.css({
               'display':'block'
           });
       }else{
           back_to_top.fadeOut();
       }
    });

    $(window).trigger('scroll');

});

原视频链接:http://www.imooc.com/learn/598


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值