DOM 관련 메소드를 정리합니다.

2021. 04. 05

Element.insertAdjacentHTML

Element.insertAdjacentHTML(position: string, text:string): void

  • HTML or XML 같은 특정 텍스트를 파싱하고, 특정 위치에 DOM tree 안에 원하는 node들을 추가
  • 이미 사용중인 element 는 다시 파싱하지 않음. 그러므로 element 안에 존재하는 element를 건드리지 않는다. (innerHtml과는 다르다).
  • innerHtml보다 작업이 덜 드므로 빠르다.

element.insertAdjacentHTML(position, text)

  • position

    • beforebegin : element 앞
    • afterbegin : element안 첫번째 child
    • beforeend : element 내부 마지막 child
    • afterend : element 뒤
// <div id="one">one</div>
const d1 = document.getElementById("one")
d1.insertAdjacentHTML("afterend", '<div id="two">two</div>')

// At this point, the new structure is:
// <div id="one">one</div><div id="two">two</div>

element.closest

element.closest(selector: string): HTMLElement | null

  • 기준 Element 에서부터 closest() 메소드를 통해 자신부터 부모 요소 단위로 출발하여 각 요소가 지정한 선택자에 만족할 때까지 탐색한다(문서 루트까지 이동).
  • 이 중 가장 가깝게 조건에 만족한 부모 요소가 반환되며, 조건에 만족한 요소가 없으면 null 값을 반환한다.
const closestElement = targetElement.closest(selectors)

© 2024 Doe의 devlog, Built with Vapor blog Theme Gatsby