"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 프레임워크 없이 DOM 준비 상태를 확인하는 방법은 무엇입니까?

프레임워크 없이 DOM 준비 상태를 확인하는 방법은 무엇입니까?

2024년 12월 23일에 게시됨
검색:158

How to Determine DOM Readiness without Frameworks?

프레임워크 없이 DOM 준비 이해

웹 애플리케이션을 개발할 때 DOM(문서 개체 모델)을 조작할 준비가 되었는지 결정하는 것이 중요합니다. jQuery와 같은 프레임워크는 ReadyState 리스너를 제공하지만 이 문서에서는 DOM 준비 상태를 감지하는 대체 접근 방식을 살펴봅니다.

DOM 상태에 직접 액세스

프레임워크에 의존하는 대신 다음을 직접 수행할 수 있습니다. document'sreadyState 속성을 확인하세요:

if (document.readyState === 'complete') {
  // DOM is ready
}

그러나 이 접근 방식은 일부 브라우저에서 정확한 ReadyState 값을 제공하지 않을 수 있으므로 여러 브라우저에서 신뢰할 수 없습니다.

이벤트 기반 DOM 준비 확인

브라우저 간 접근 방식은 DOM이 준비될 때 발생하는 DOMContentLoaded 이벤트를 수신하는 것입니다. 조작:

function fireOnReady() {
  // ...
}
if (document.readyState === 'complete') {
  fireOnReady();
} else {
  document.addEventListener("DOMContentLoaded", fireOnReady);
}

문서화되지 않은 jQuery의 isReady 속성 활용

문서화되지는 않았지만 jQuery는 내부적으로 DOM 준비 상태를 나타내는 isReady 속성을 노출합니다.

if ($.isReady) {
  // DOM is ready
} else {
  // DOM is not yet ready
}

경량 DOM 지원 스니펫

Dustin Diaz의 스니펫에서 영감을 받아 다음과 같이 미니 DOM 지원 리스너를 만들 수 있습니다.

if (!/in/.test(document.readyState)) {
  // Document is ready
} else {
  // Document is not ready
}

이 검사는 이전 로드 상태에서 ReadyState 값에 "in"이 포함되어 있다는 사실을 활용하여 DOM 준비 상태를 신뢰할 수 있는 지표로 만듭니다.

릴리스 선언문 이 글은 1729390816에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3