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

JavaScript window innerWidth와 innerHeight 속성 완벽 정리

JavaScript window innerWidth와 innerHeight 속성이란?

JavaScript에서 window.innerWidth 속성은 브라우저 창 콘텐츠 영역(뷰포트)의 너비를 픽셀 단위로 반환하고, window.innerHeight 속성은 같은 영역의 높이를 픽셀 단위로 반환합니다. 두 속성 모두 읽기 전용(read-only)이며, 스크롤바나 브라우저 UI(툴바, 메뉴 등)는 제외된 순수한 콘텐츠 영역의 크기를 기준으로 합니다.

반응형 웹 디자인 구현, 동적 레이아웃 조정, 요소 위치 계산 등 현재 브라우저 창의 실제 크기를 알아야 하는 상황에서 매우 유용하게 활용됩니다.

다음은 JavaScript에서 window innerWidth와 innerHeight 속성을 사용하는 방법을 보여주는 예제 코드입니다.

예제

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
    body {
        font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    }
    .result{
        font-size: 20px;
        font-weight: 500;
    }
</style>
</head>
<body>
<h1>Window innerWidth and innerHeight Properties</h1>
<div style="color: green;" class="result"></div>
<button class="Btn">CLICK HERE</button>
<h3>
Click on the above button get the innerWidth and innerHeight of the window.
</h3>
<script>
    let resEle = document.querySelector(".result");
    document.querySelector(".Btn").addEventListener("click", () => {
        resEle.innerHTML = "Window.innerWidth = "+window.innerWidth + '<br>';
        resEle.innerHTML += "Window.innerHeight = "+window.innerHeight + '<br>';
    });
</script>
</body>
</html>

출력 결과

위 코드를 실행하면 다음과 같은 초기 화면이 표시됩니다.

JavaScript window innerWidth와 innerHeight 속성 완벽 정리

'CLICK HERE' 버튼을 클릭하면 아래 그림처럼 현재 브라우저 창의 innerWidth(너비)와 innerHeight(높이) 값이 초록색 결과 영역에 출력됩니다.

JavaScript window innerWidth와 innerHeight 속성 완벽 정리

코드 설명

이 예제의 핵심 동작 방식은 다음과 같습니다.

1. 결과 표시 영역 선택: document.querySelector(".result")를 통해 값을 출력할 div 요소를 가져옵니다.

2. 클릭 이벤트 등록: addEventListener("click", ...)로 버튼 클릭 시 실행될 함수를 연결합니다.

3. 속성 값 출력: 클릭이 발생하면 window.innerWidthwindow.innerHeight 값을 읽어 innerHTML에 문자열 형태로 삽입하여 화면에 표시합니다.

참고로 창 크기가 변경될 때마다 값을 갱신하고 싶다면 resize 이벤트 리스너를 활용하면 됩니다.