070JQ-电梯导航!

31 篇文章 0 订阅
10 篇文章 0 订阅

js

$(function () {
    // 互斥锁节流阀
    var flag = true;
    var pos = $(".two").offset().top;
    toggleTool();
    // 到第一个高度显示nav
    $(window).scroll(function () {
        toggleTool();
        if (flag) {
            // 页面滚动到某个区域,对应的li添加和删除current
            // i索引号 ele 元素
            $(".w").each(function (i, ele) {
                if ($(document).scrollTop() >= $(ele).offset().top)
                    $("li").eq(i).addClass("current").siblings("").removeClass("current");
            })
        }
    });
    // 2点击电梯导航页面可以滚动到相应内容区域
    $("li").on("click", function () {
        flag=false;
        // 当每次点击li计算出页面要去的位置
        // 选出对应索引号的内容区的盒子计算他的offset().top
        var current = $(".w").eq($(this).index()).offset().top
        $("body,html").stop().animate({
            "scrollTop": current
        },function(){
            flag=true;
        })
        // 点击之后让当前的颜色li变为绿色
        $(this).addClass("current").siblings("").removeClass("current");
        
    })

    // 函数
    function toggleTool() {
        if ($(document).scrollTop() >= pos) {
            $(".nav").fadeIn();
        } else {
            $(".nav").fadeOut();
        }
    }

})

html

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <link rel="stylesheet" href="css/index.css">
    <script src="js/jquery.min.js"></script>
    <script src="js/index.js"></script>
</head>

<body>
    <header>
        <div class=" one"></div>
        <div class="w two"></div>
        <div class="w three"></div>
        <div class="w four"></div>
        <div class="w five"></div>
        <div class="w nav">
            <ul>
                <li class="current">1</li>
                <li>2</li>
                <li>3</li>
                <li>4</li>
            </ul>
        </div>
    </header>

</body>

</html>

效果就是有点丑

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值