javascript - 滚动到达内容区域相应的触发右边选中怎么做
PHP中文网
PHP中文网 2017-04-11 11:36:33
[JavaScript讨论组]

滚动到达第几块内容相应的右边也会选中第几个

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(1)
迷茫
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <title>Welcome!</title>
    <style>
        ul {
            position: fixed;
            right: 30px;
            top: 100px;
        }
        .red {
            color: red;
        }
    </style>
</head>
<body>
    <h1>title1</h1>
    <p style="height:300px;"></p>
    <h1>title2</h1>
    <p style="height:300px;"></p>
    <h1>title3</h1>
    <p style="height:300px;"></p>
    <h1>title4</h1>
    <p style="height:300px;"></p>
    <h1>title5</h1>
    <p style="height:300px;"></p>
    <h1>title6</h1>
    <p style="height:300px;"></p>
    <h1>title7</h1>
    <p style="height:300px;"></p>
    <h1>title8</h1>
    <p style="height:300px;"></p>
    <ul>
        <li>111111</li>
        <li>222222</li>
        <li>333333</li>
        <li>444444</li>
        <li>555555</li>
        <li>666666</li>
        <li>777777</li>
        <li>888888</li>
    </ul>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script>
        var timeout;
        $(window).on("scroll", function() {
            var self = $(this);
            if (timeout) window.clearTimeout(timeout);
            timeout = setTimeout(function () {
                var st = self.scrollTop();
                var index = 0;
                $("h1").each(function() {
                    if (st < $(this).offset().top) {
                        index = $("h1").index($(this)) - 1;
                        return false;
                    }
                });
                $("ul>li").removeClass('red').eq(index).addClass('red')
            }, 100);
        })
    </script>
</body>

</html>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号