JavaScript로 HTML을 생성하는 3가지 쉬운 방법
비디오 자습서
원하는 경우 이 튜토리얼을 비디오 형식으로 사용할 수 있습니다 👇
1. HTML 요소 객체 구축
힘차게 출발해보겠습니다. 이 기술에는
document.createElement(...)
를 사용하여 DOM 요소를 만든 다음 해당 요소를 문서에 추가하는 작업이 포함됩니다.이 방법은 약간 번거롭게 보일 수 있지만 가장 유연하게 사용할 수 있습니다. 즉, DOM 객체에 즉시 액세스할 수 있고 이벤트 리스너 연결, 속성 업데이트 또는 텍스트 삽입과 같은 작업을 수행할 수 있습니다.
기존 HTML
<ul id="fruit">
<li>Apple</li>
<li>Banana</li>
<li>Grape</li>
</ul>
다른 목록 항목인 포도를 추가해 보겠습니다.
const fruitsList = document.querySelector("#fruits");
const grapesListItem = document.createElement("li");
// add classes
grapesListItem.classList.add("list-item");
// add attributes
grapesListItem.setAttribute("id", "grapes");
// add events
grapesListItem.addEventListener("click", () => {
alert("You clicked on Grapes!");
});
fruitsList.appendChild(grapesListItem);
보시다시피 프로그래밍 방식이지만 가장 유연합니다.
2. 내부 HTML
이전에 JavaScript를 사용해 본 적이 있다면 아마도
innerHTML
속성에 대해 알고 있을 것입니다. 이를 통해 요소 내에서 HTML을 다시 할당할 수 있습니다.이번에는
innerHTML
를 사용하여 위에서 Grape 항목을 다시 추가해 보겠습니다.const fruitsList = document.querySelector("#fruits");
fruitsList.innerHTML += '<li id="grapes">Grapes</li>';
const grapesListItem = document.getElementById("grapes");
grapesListItem.classList.add( ...);
grapesListItem.setAttribute( ... );
grapesListItem.addEventListener( ... );
보시다시피
+=
를 사용하여 기존 HTML에 추가했습니다. 요소의 전체 HTML을 바꾸려면 대신 =
를 사용하십시오.주목해야 할 또 다른 사항은
innerHTML
가 간단한 작업에 적합하다는 것입니다. 속성을 안전하게 추가하기 위해 목록 항목이 추가되면 getElementById()
를 사용해야 했습니다.3. insertAdjacentHTML
이것은 내가 가장 좋아하는 것 중 하나입니다.
insertAdjacentHTML
메서드는 HTML 문자열을 삽입할 수 있다는 점에서 innerHTML
와 유사한 방식으로 작동합니다.그러나
insertAdjacentHTML
를 사용하면 위치를 지정할 수 있습니다. 다음 4가지 옵션 중 하나를 사용할 수 있습니다.beforebegin
(요소 앞) afterbegin
(첫째 아이) beforeend
(막내) afterend
(요소 뒤) 이번에는
insertAdjacentHTML
를 사용하여 위와 동일한 예를 살펴보겠습니다.const fruitsList = document.querySelector("#fruits");
fruitsList.insertAdjacentHTML("beforeend", '<li id="grapes">Grapes</li>');
const grapesListItem = document.getElementById("grapes");
grapesListItem.classList.add( ...);
grapesListItem.setAttribute( ... );
grapesListItem.addEventListener( ... );
이것은 추가된 요소를 선택해야 하지만 HTML 문자열의 위치 지정 측면에서 더 큰 유연성을 제공합니다.
이 방법에 대한 자세한 내용은 MDN Docs 을 참조하십시오.
지금 등록하세요 👉 JavaScript DOM 단기집중과정
웹 개발을 배우고 있다면 아래 링크에서 JavaScript DOM에 대한 전체 과정을 찾을 수 있습니다 👇
https://www.udemy.com/course/the-ultimate-javascript-dom-crash-course/?referralCode=DC343E5C8ED163F337E1
Reference
이 문제에 관하여(JavaScript로 HTML을 생성하는 3가지 쉬운 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/dcodeyt/3-easy-ways-to-generate-html-with-javascript-3b1j텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)