JS | 노드 css 변경하기

2022. 12. 30. 16:04·JavaScript

1. 노드의 css속성을 바꿀 떄는 style속성을 이용합니다.

2.  css 속성은 카멜 표기법을 따릅니다. (하이픈이 제거되고 카멜표기법)

ex) text-aligin = textAlign 

태그를 얻어와 style속성으로 접근한다.

3. 노드의 style에 전달되는 값은 문자열로 작성합니다.

 

규칙 

노드.style.css속성 = "값"

 

예제 1) li의 배경색 변경

 

<ul class="box">
        <li>목록1</li>
        <li>목록2</li>
        <li>목록3</li>
    </ul>

    <button id="btn">css속성변경하기</button>

    <script>

        var btn = document.getElementById("btn");
        var li = document.querySelectorAll(".box li");
        btn.onclick = function(){

            for(var i = 0; i < li.length; i++){
                li[i].style.backgroundColor = "pink";    
                li[i].style.color = "white";
            }
        }

    </script>

퀴즈1 ) 옵션의 value 값에 따라 이미지 변경 /  color 값에 따라 border 색상 변경

select 안에 option의 value 값을 얻으려면 select.value

 <!--


    <article>
        <img src="img/1.jpg" width = "200" alt="" style="border: 3px solid black;">

        <select id = "sel">
            <option value="1.jpg">봄</option>
            <option value="2.jpg">여름</option>
            <option value="3.jpg">가을</option>
            <option value="4.jpg">겨울</option>
        </select>

        <button class="btn">이미지 변경</button>

        <input type="color" class="input">
        <button class="btn2">색상 변경</button>
    </article>

    <script>

        var sel = document.getElementById("sel");
        var btn = document.querySelector(".btn");
        var btn2 = document.querySelector(".btn2");
        var col = document.querySelector("input");

        var img = document.getElementsByTagName("img");

        btn.onclick = function(){
                img[0].src = "img/"+sel.value;
        }

        console.log(col);
        console.log(col.value);

        btn2.onclick = function(){
            img[0].style.borderColor = col.value;
        }

    </script>-->

    <h3>change 이벤트로 한번에 변경하기</h3>
    <article>
        <img src="img/1.jpg" width = "200" alt="" style="border: 3px solid black;" class="img">

        <select class = "sel">
            <option value="1.jpg">봄</option>
            <option value="2.jpg">여름</option>
            <option value="3.jpg">가을</option>
            <option value="4.jpg">겨울</option>
        </select>

        <input type="color" class="input">
    </article>

    <script>
        var img = document.querySelector(".img");
        var sel = document.querySelector(".sel");
        sel.onchange = function(){
            img.src = "img/" + sel.value;
        }

        var input = document.querySelector(".input");
        input.onchange = function(){
            img.style.border = "3px solid " + input.value;
        }

    </script>

 

 

퀴즈2 ) 아이디와 비밀번호의 조건 충족

 

  <h3>focus : input에 focus가 들어갈 때 동작</h3>
    <h3>blur : input에 focus가 떠났을 때 동작</h3>

    <div id = "box_wrap">
        <div class="box">
            <h3>LOGIN</h3>
            <span>ID</span> <input type="text" class="id" placeholder="4글자 이상">
            <p class="id_msg"></p>
            <span>PW</span> <input type="text" class="pw" placeholder="9글자 이상">
            <p class="pw_msg"></p>
        </div>
    </div>

<!--blur : 포커스가 떠나면 바로 동작-->
<!--change : 값이 변했을 때 동작-->
<script>
        var id = document.querySelector(".id");
        var pw = document.querySelector(".pw");
        var id_msg = document.querySelector(".id_msg");
        var pw_msg = document.querySelector(".pw_msg");

        id.onchange = function(){

            if(id.value.length<4){
                id_msg.innerHTML= "*아이디는 4글자 이상이어야 합니다.";
                id.style.border = "1px solid red";
            } else {
                id_msg.innerHTML= "";
                id.style.border = "1px solid green";
            }
        }

        pw.onchange = function(){

            if(pw.value.length<9){
                pw_msg.innerHTML= "*비밀번호는 9글자 이상이어야 합니다.";
                pw.style.border = "1px solid red";
            } else {
                pw_msg.innerHTML= "";
                pw.style.border = "1px solid green";
            }
        }


    </script>

 

 

https://codeshare.io/ 협업시 유용한 코드 공유 프로그램

 

'JavaScript' 카테고리의 다른 글

JS | 부모 노드, 자식 노드 선택  (0) 2023.01.02
JS | 노드 생성, 추가  (0) 2022.12.30
JS | BOM and DOM  (0) 2022.12.29
JS | this  (0) 2022.12.29
JS | 이벤트 핸들러  (0) 2022.12.29
'JavaScript' 카테고리의 다른 글
  • JS | 부모 노드, 자식 노드 선택
  • JS | 노드 생성, 추가
  • JS | BOM and DOM
  • JS | this
개발 공부
개발 공부
  • 개발 공부
    개발 공부
    개발 공부
  • 전체
    오늘
    어제
    • 전체보기 (162)
      • 프로젝트 (1)
      • JavaScript (45)
      • Node.js (3)
      • Next.js (5)
      • React (17)
      • NoSQL (0)
      • HTML,CSS (3)
      • CS (6)
      • Java (35)
      • Spring (6)
        • Spring의 정석 (1)
      • Spring boot (1)
      • MySQL (1)
      • 리눅스 (16)
      • JSP (9)
      • AWS (0)
      • git (2)
      • 알고리즘 (1)
      • ect (7)
      • Project (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Java의 정석
    오블완
    자바
    Java
    자바의 정석
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
개발 공부
JS | 노드 css 변경하기
상단으로

티스토리툴바