ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JQuery 연습하기 (2)
    스파르타코딩/스파르타코딩 2주차 2022. 5. 26. 13:42

    지난 시간에 hide() , show()를 통해 버튼을 누르면 보였다 사라졌다하는 기능까지 해두었으니

    이번 시간에는 포스팅 박스의 열기, 닫기 버튼을 구현해보자!

     

    <script>
    
        function openClose(){
            let status = $('#post-box').css('display');
            console.log(status);
            if(status == 'block'){
                $('#post-box').hide();
                $('#btn-posting-box').text('포스팅박스 열기');
            }else {
                $('#post-box').show();
                $('#btn-posting-box').text('포스팅박스 닫기');
            }
        }
    </script>

    'btn-posting-box'가 hide() 닫혔을때 버튼에는 '열기'로 표시되어야 하니 위에 코드처럼 적어주면 된다.

    show()도 마찬가지로 열려있을때 버튼에는 '닫기'로 표시해주었다.

    버튼이 잘 작동되는지 확인한 후 마지막으로 포스팅박스(posting-box)에 display : none; 을 주어 처음 들어왔을 때 포스팅박스가 닫혀있는 상태로 만들어주었다.

     

     

     

     

     

     

    <전체 code>

    <!doctype html>
    <html lang="en">
    
    <head>
        <!-- Required meta tags -->
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    
        <!-- Bootstrap CSS -->
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
              integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    
        <!-- Optional JavaScript -->
        <!-- jQuery first, then Popper.js, then Bootstrap JS -->
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
                integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
                crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
                integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
                crossorigin="anonymous"></script>
    
        <title>스파르타코딩클럽 | 부트스트랩 연습하기</title>
    
        <link href="https://fonts.googleapis.com/css2?family=Jua&display=swap" rel="stylesheet">
    
        <style>
    
            * {
                font-family: 'Jua', sans-serif;
            }
    
            .title{
                padding:30px;
            }
    
            .wrap {
                width: 900px;
                margin: auto;
            }
    
            .comment {
                color: blue;
                font-weight: bold;
            }
    
            .posting-box {
                width: 500px;
                margin: 0px auto 30px auto;
                border: 3px solid black;
                border-radius: 10px;
                padding: 30px;
                display:none;
            }
        </style>
        <script>
    
            function openClose(){
                let status = $('#post-box').css('display');
                console.log(status);
                if(status == 'block'){
                    $('#post-box').hide();
                    $('#btn-posting-box').text('포스팅박스 열기');
                }else {
                    $('#post-box').show();
                    $('#btn-posting-box').text('포스팅박스 닫기');
                }
            }
        </script>
    </head>
    
    <body>
    <h1 class="text-center title">자바스크립트 맛보기</h1>
    <h5 class="text-center title">script를 사용하여 '포스팅박스' 버튼 클릭시(onclick) 추가 한 명령이 실행되게한다.</h5>
    
    <div class="wrap">
        <div class="jumbotron">
            <h1 class="display-4">나홀로 링크 메모장!</h1>
            <p class="lead">중요한 링크를 저장해두고, 나중에 볼 수 있는 공간입니다</p>
            <hr class="my-4">
            <p class="lead">
                <a onclick="openClose()" id="btn-posting-box" class="btn btn-primary btn-lg" href="#" role="button">포스팅박스 열기</a>
            </p>
        </div>
        <div class="posting-box" id="post-box">
            <div class="form-group">
                <label>아티클 URL</label>
                <input type="email" class="form-control" id="article-url" aria-describedby="emailHelp"
                       placeholder="">
            </div>
            <div class="form-group">
                <label for="exampleFormControlTextarea1">간단 코멘트</label>
                <textarea class="form-control" id="exampleFormControlTextarea1" rows="3"></textarea>
            </div>
            <button type="submit" class="btn btn-primary">기사저장</button>
        </div>
        <div class="card-columns" id="cards-box">
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
            <div class="card">
                <img class="card-img-top"
                     src="https://d2ur7st6jjikze.cloudfront.net/offer_photos/51642/338463_large_1553659567.jpg?1553659567"
                     alt="Card image cap">
                <div class="card-body">
                    <h5 class="card-title"><a href="https://www.naver.com">여기 기사 제목이 들어가죠</a></h5>
                    <p class="card-text">기사의 요약 내용이 들어갑니다. 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산...</p>
                    <p class="card-text comment">여기에 코멘트가 들어갑니다.</p>
                </div>
            </div>
        </div>
    </div>
    
    </body>
    
    </html>

    '스파르타코딩 > 스파르타코딩 2주차' 카테고리의 다른 글

    JQuery 연습(3) 통합 코드  (0) 2022.05.26
    jquery 연습(3)  (0) 2022.05.26
    JQuery 연습  (0) 2022.05.24
    JQuery 입문하기  (0) 2022.05.24
    javascript 연습하기(1)  (0) 2022.05.23
Designed by Tistory.