scroll 슬라이딩 이벤트

imjingu·2023년 7월 30일
0

개발공부

목록 보기
239/481
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <title>Document</title>
    <script>
        /*
        
        */

        $(function() {
        /* li 클릭시 해당 섹션으로 슬라이딩되도록 */
        $('nav ul li').on('click', function() {
                // attr = 선택요소의 속성값을 들고옴, href 속성 값을 들고옴
                let idName = $(this).children('a').attr('href');
                console.log(idName);

                // position = 선택요소의 위치 좌표값을 반환 하거나 변경, idName의 top 좌표값을 반환
                let pos = $(idName).position().top;
                console.log(pos);
                
                // 웹페이지 화면의 scroll을 top 부분에서 pos값 만큼 몇초동안 이동하는 애니메이션
                $('html, body').animate({scrollTop: pos}, 1 * 1000);
            });
        });
    </script>
    <style>
       * {
        margin: 0;
        padding: 0;
       }
       li {
        list-style: none;
       }
       nav {
        position: fixed;
        background-color: antiquewhite;
       }
       section article {
        max-width: 100%;
        width: 100vw;
        height: 100vh;
       }
       section article:nth-child(1) {
        background-color: aqua;
       }
       section article:nth-child(2) {
        background-color: rebeccapurple;
       }
       section article:nth-child(3) {
        background-color: aquamarine;
       }
       section article:nth-child(4) {
        background-color: royalblue;
       }
    </style>
</head>
<body>
    <nav>
        <ul>
            <li><a href="#first">first</a></li>
            <li><a href="#second">second</a></li>
            <li><a href="#third">third</a></li>
            <li><a href="#fourth">fourth</a></li>
        </ul>
    </nav>
    <section>
        <article id="first"></article>
        <article id="second"></article>
        <article id="third"></article>
        <article id="fourth"></article>
    </section>
</body>
</html>

0개의 댓글