获取元素到页面顶部的距离_jQuery 操作元素综合案例

535ad01443087723dd1edba1480f31d1.png

好好学习,天天向上

本章主要内容是:固定导航返回顶部、楼梯效果

1、固定导航返回顶部

效果图:

9f089d6f119a5ff39ca89fbd10908815.gif

示例代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <style>
        * {
            margin:0;
            padding:0;
        }

        .w{
            width: 1191px;
            margin:0 auto;
        }
        .box1 {
            height: 935px;
        }
        .box2 {
            height: 107px;
        }
        .box2.active {
            position: fixed;
            top:0;
        }

        .top {
            width: 50px;
            height: 50px;
            font:bold 50px/50px '宋体';
            text-align:center;
            color: #fff;
            background-color: blue;
            cursor:pointer;
            position:fixed;
            bottom: 20px;
            right: 0;
            display:none;
        }

        
    </style>
</head>
<body>
    <div class="w">
        <div class="box1">
            <img src="img/01.png" alt=""/>
        </div>
        <!-- 今日团 -->
        <div class="box2" id="box2">
            <img src="img/02.png" alt=""/>
        </div>
        <div class="box3">
            <img src="img/03.png" alt=""/>
        </div>
        <div class="box4">
            <img src="img/04.png" alt=""/>
        </div>
    </div>
    1111
    <div class="top" id="backTop">▲</div>
    <script src="lib/jquery-1.12.4.js"></script>
    <script>
        // 固定导航和返回顶部
        var $box2 = $("#box2");
        var $backTop = $("#backTop");
        // 1.获取一下今日团距离文档顶部的距离
        var v1 = $box2.offset().top;
        // console.log(v1)
        // 2.给整个文档添加滚动事件
        $(document).scroll(function () {
            // 3.在事件内部判断卷走的距离是否大于等于今日团距离顶部的间距
            var v2 = $(this).scrollTop();
            if (v2 >= v1) {
                // 4.给今日团进行固定,让返回顶部按钮出现
                $box2.addClass("active");
                $backTop.show();
            } else {
                // v2 低于 v1 恢复默认
                $box2.removeClass("active");
                $backTop.hide();
            }
        })

        // 5.返回顶部,添加点击事件
        // $backTop.click(function () {
        //     // 让页面滚动到顶部
        //     // 直接跳转到顶部
        //     $(document).scrollTop(0);
        // })
        // 以运动方式返回顶部
        $backTop.click(function () {
            // 让页面滚动到顶部
            // 滚动的元素要选择 html 或 body
            // 直接使用 document ,它是没有 scrollTop 属性的
            $("html,body").animate({"scrollTop": 0},500);
        })
    </script>
</body>
</html>

2、楼梯效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值