반복문 활용해서 카드 리스트 만들어보기

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>카드리스트만들어보기</title>
    <style>
        .box {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 1fr;
            border: 1px solid black;
            padding: 10px;
        }
        .card {
           border: 1px solid lightcyan; 
           box-shadow: 0 4px 4px 0 gray;
           padding: 10px;
           margin: 5px;
           border-radius: 5px;
        }
    </style>
</head>
<body>
    <h1>반복문으로 리스트 만들어보기</h1>
    <button onclick="render()"> render</button>
    <div class="box" id="outerBox"></div>
    <script>
        function render() {
            let el = document.querySelector("#outerBox");
            // 반복문 통해서 E 요소 생성 
            for(let i = 0; i < 10; i++) {
               el.append(makeCard(i)); 
            }
        }
        function makeCard(id) {
            let card = document.createElement("div");
            card.setAttribute("class", "card");
            card.setAttribute("id", "card--"+id);

            card.innerHTML = `
                <h3>제목 ${id} 입니다</h3>
                <p>내용 ${id} 입니다</p>
                <button onclick="del(${id})">삭제</button>
            `;
            return card;
        }
        function del(id) {
            let el = document.querySelector("#card--" + id);
            el.remove();
        }
    </script>
</body>
</html>

토글 기능 만들어 보기

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .like--heart {
            font-size: 150px;
            color: gray;
            cursor: pointer;
        }
        .like--heart.liked {
            color: red;
        }
    </style>
</head>
<body>
    <span class="like--heart" onclick="likeToggle()">&#10083;</span>
    <script>
        function likeToggle() {
            let likeHeart = document.querySelector(".like--heart");
            console.log(likeHeart);
            console.log(likeHeart.classList);
            likeHeart.classList.toggle('liked');
            
        }       
    </script>
    
</body>
</html>

 

 

'JS' 카테고리의 다른 글

제이쿼리 기본 문법 사용해보기  (0) 2023.05.08
제이쿼리란  (0) 2023.05.08
예제 (값 받아오기)  (0) 2023.05.08
BOM  (0) 2023.05.08
이벤트 등록 처리  (0) 2023.05.04

+ Recent posts