Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 요소 숨기기·표시 토글 기능 구현하기

웹 개발에서 버튼 클릭 한 번으로 특정 요소를 숨겼다가 다시 보여주는 토글(Toggle) 기능은 매우 자주 사용됩니다. JavaScript에서는 요소의 style.display 속성 값을 확인하고 변경하는 방식으로 이 기능을 간단하게 구현할 수 있습니다.

요소의 display 값이 none이면 화면에서 숨겨진 상태이므로 block으로 변경해 표시하고, 그렇지 않으면 none으로 설정해 숨기는 조건문을 활용하면 됩니다.

예제 코드

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
    body {
        font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    }
    button {
        padding: 10px;
        border: none;
        background-color: rgb(51, 51, 192);
        color: white;
        font-size: 18px;
    }
    .div-visible {
        width: 100%;
        padding: 50px 0;
        text-align: center;
        background-color: rgb(210, 230, 173);
        margin-top: 20px;
        font-size: 18px;
        font-weight: 500;
    }
</style>
</head>
<body>
<h1>숨기기와 표시 토글 예제</h1>
<button class="toggleDisplay">Div 숨기기</button>
<h2>위 버튼을 클릭하면 아래 div 요소가 숨겨집니다</h2>
<div class="div-visible">
This is a div element
</div>
<script>
    document.querySelector(".toggleDisplay").addEventListener("click", toggleDivDisplay);
    function toggleDivDisplay() {
        var x = document.querySelector(".div-visible");
        if (x.style.display === "none") {
            x.style.display = "block";
        } else {
            x.style.display = "none";
        }
    }
</script>
</body>
</html>

실행 결과

위 코드를 실행하면 다음과 같은 화면이 출력됩니다.

JavaScript로 요소 숨기기·표시 토글 기능 구현하기

'Div 숨기기' 버튼을 클릭하면 아래와 같이 해당 div 요소가 화면에서 사라지는 것을 확인할 수 있습니다.

JavaScript로 요소 숨기기·표시 토글 기능 구현하기

코드 작동 원리

1. querySelector로 버튼을 선택한 후 addEventListener를 통해 클릭 이벤트에 toggleDivDisplay 함수를 연결합니다.
2. 버튼을 클릭하면 함수가 실행되어 대상 div 요소의 현재 display 스타일 값을 읽어옵니다.
3. 값이 none(숨김 상태)이라면 block으로 변경하여 요소를 다시 표시하고, 그 외의 경우에는 none으로 변경하여 요소를 숨깁니다.
4. 이 과정이 클릭할 때마다 반복되면서 숨기기와 표시가 번갈아 전환되는 토글 효과가 완성됩니다.

이 방식은 아코디언 메뉴, 드롭다운 패널, 모달 창 열고 닫기 등 다양한 UI 인터랙션의 기본이 되므로 꼭 익혀두면 유용합니다.