λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
JAVASCRIPT

JAVASCRIPT | μš”μ†Œ 크기 λ©”μ„œλ“œ

by μ½”λ”©ν•˜μž9 2022. 9. 1.
728x90

πŸ–‡οΈ μœ„μΉ˜ 및 크기λ₯Ό ν‘œν˜„ν•˜λŠ” 속성 및 λ©”μ„œλ“œ

01. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.clientWidth : μš”μ†Œμ˜ κ°€λ‘œκ°’(margin/border 미포함)
02. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.clientHeight : μš”μ†Œμ˜ 높이값(margin/border 미포함)
03. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.clientTop : μš”μ†Œμ˜ YμΆ•κ°’(λΆ€λͺ¨ κΈ°μ€€)
04. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.clientLeft : μš”μ†Œμ˜ XμΆ•κ°’(λΆ€λͺ¨ κΈ°μ€€)
05. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.offsetWidth : μš”μ†Œμ˜ κ°€λ‘œκ°’(border/padding 포함)
06. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.offsetHeight : μš”μ†Œμ˜ 높이값(border/padding 포함)
07. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.offsetTop : μš”μ†Œμ˜ YμΆ•κ°’(λ¬Έμ„œ κΈ°μ€€)
08. μš”μ†Œ 속성 : 크기 및 μœ„μΉ˜ : element.offsetLeft : μš”μ†Œμ˜ XμΆ•κ°’(λ¬Έμ„œ κΈ°μ€€)

const box1 = document.querySelector("#sample01 .sbox");

document.querySelector("#sample01 .btn1").addEventListener("click", (e)=>{
    e.preventDefault();     // μœ„λ‘œ 올라감 방지
    document.querySelector("#sample01 .sResult").innerHTML = "이 λ°•μŠ€μ˜ κ°€λ‘œκ°’μ€ " +box1.clientWidth + "px(margin/border λΆˆν¬ν•¨) μž…λ‹ˆλ‹€.";
});

...

09. μš”μ†Œ λ©”μ„œλ“œ : 크기 및 μœ„μΉ˜ : element.getBoundungClientRect() : 전체 크기 및 μœ„μΉ˜(객체둜 ν‘œν˜„)

document.querySelector("#sample01 .btn9").addEventListener("click", (e)=>{
    e.preventDefault();

    // document.querySelector("#sample01 .sResult").innerHTML = "이 λ°•μŠ€μ˜ getBoundingClientRect()값은 " +box1.getBoundingClientRect() + "px(λ¬Έμ„œ κΈ°μ€€) μž…λ‹ˆλ‹€.";
    // console.log(box1.getBoundingClientRect());  DOMRect 객체 λ°©μ‹μœΌλ‘œ κ²°κ³Ό 뜸

    const box = document.querySelector("#sample01 .sbox");
    const result = document.querySelector("#sample01 .sResult");
    const rect = box.getBoundingClientRect();

    result.innerHTML = "";

    for(let key in rect){
        if(typeof rect[key] !== "function"){                // 객체 μ•ˆμ— ν•¨μˆ˜κ°€ μ•„λ‹Œ 것 μ°ΎκΈ°
            let span = document.createElement("span");      // 데이터 값을 span에 λ„£μ–΄μ€Œ
            span.textContent= `${key}: ${rect[key]} `;
            result.appendChild(span);
        };
    };
});

λŒ“κΈ€


It's cording time

μ½”λ”© μ—¬κΈ°μ„œ μ •λ¦¬ν•˜κ³  λ°°μ›Œλ³΄μžκ΅¬ :9

κ΄‘κ³  μ€€λΉ„μ€‘μž…λ‹ˆλ‹€.