ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • innerHTML, outerHTML, textContent, innerText
    JavaScript/DOM 2023. 1. 28. 16:18
    <!DOCTYPE html>
    <html lang="ko">
    <head>
      <meta charset="UTF-8">
      <title>JS with Codeit</title>
    </head>
    <body>
      <div id="content">
        <h2 id="title-1">Cat-1</h1>
        <ul id="list-1">
          <li>Ragdoll</li>
          <li>British Shorthair</li>
          <li>Scottish Fold</li>
          <li>Bengal</li>
          <li>Siamese</li>
          <li>Maine Coon</li>
          <li>American Shorthair</li>
          <li>Russian Blue</li>
        </ul>
    
        <h2 id="title-2">Cat-2</h1>
        <ul id="list-2">
          <li>Sphynx</li>
          <li>Munchkin</li>
          <li>Persian</li>
          <li>Norwegian Forset</li>
          <li>Turkish Angora</li>
          <li>Bombay</li>
          <li>Selkirk Rex</li>
          <li>Munchkin</li>
        </ul>    
       </body>
    </html>

     

     

     

    1. element.innerHTML

    - 요소 노드 내부의 HTML 코드를 문자열로 리턴해 줍니다. (내부에 있는 줄 바꿈이나 들여쓰기 모두 포함합니다.)

    - 요소 안의 정보를 확인할 수도 있지만, 내부의 HTML 자체를 수정할 때 좀 더 자주 활용됩니다. (내부에 있던 값을 완전히 새로운 값으로 교체하기 때문에 주의해서 사용!)

     

    const myTag = document.querySelector('#list-1'); 
    console.log(myTag.innerHTML)
    
    /*   
      <li>Ragdoll</li>
      <li>British Shorthair</li>
      <li>Scottish Fold</li>
      <li>Bengal</li>
      <li>Siamese</li>
      <li>Maine Coon</li>
      <li>American Shorthair</li>
      <li>Russian Blue</li>    
    */

     

    const myTag = document.querySelector('#list-1');  
    
    // 변경해보기 
    myTag.innerHTML = '<li>Exotic</li>'; 
    console.log(myTag.innerHTML); 
    // <li>Exotic</li>

     

     

    2. element.outerHTML

    - 요소 노드 자체의 전체적인 HTML 코드를 문자열로 리턴해줍니다. (내부에 있는 줄 바꿈이나 들여쓰기 모두 포함합니다.)

    - outerHTML은 새로운 값을 할당할 경우 요소 자체가 교체되어 버리기 때문에 주의해야 합니다.

    const myTag = document.querySelector('#list-1'); 
    console.log(myTag.outerHTML);
    
    /*  
    <ul id="list-1">
          <li>Ragdoll</li>
          <li>British Shorthair</li>
          <li>Scottish Fold</li>
          <li>Bengal</li>
          <li>Siamese</li>
          <li>Maine Coon</li>
          <li>American Shorthair</li>
          <li>Russian Blue</li>
    </ul>  
    */

     

    const myTag = document.querySelector('#list-1'); 
    myTag.outerHTML = '<ul id="new-list"><li>Exotic</li></ul>'

     

     

    3. element.textContent

    - 요소 안의 내용들 중에서 HTML 태그 부분은 제외하고 텍스트만 가져옵니다. (내부에 있는 줄 바꿈이나 들여쓰기 모두 포함합니다.)

    - 새로운 값을 할당하면 innerHTML과 마찬가지로 내부의 값을 완전히 새로운 값으로 교체 합니다.

    const myTag = document.querySelector('#list-1'); 
     // textContext
    console.log(myTag.textContent);
    
    
    
    /*
        Ragdoll
        British Shorthair
        Scottish Fold
        Bengal
        Siamese
        Maine Coon
        American Shorthair
        Russian Blue
    */

     

    const myTag = document.querySelector('#list-1');  
    myTag.textContent = '<li>new text!</li>';
    console.log(myTag.textContent); // <li>new text!</li>

     

    'JavaScript > DOM' 카테고리의 다른 글

    JS로 HTML Style다루기  (0) 2023.01.29
    getAttribute(), setAttritube(), removeAttribute()  (0) 2023.01.28
    <script>태그 위치  (0) 2023.01.11
    DOM조작  (0) 2022.11.26
    DOM - 노드  (0) 2022.11.26

    댓글

Designed by Tistory.