>  기사  >  웹 프론트엔드  >  프레임워크 없이 DOM 준비 상태를 확인하는 방법은 무엇입니까?

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

Patricia Arquette
Patricia Arquette원래의
2024-10-20 10:27:02534검색

How to Determine DOM Readiness without Frameworks?

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

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

DOM 상태에 직접 액세스

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

<code class="js">if (document.readyState === 'complete') {
  // DOM is ready
}</code>

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

이벤트 기반 DOM 준비 확인

보다 다양한 브라우저 접근 방식은 DOM을 조작할 준비가 되었을 때 발생하는 DOMContentLoaded 이벤트를 수신하는 것입니다.

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

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

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

<code class="js">if ($.isReady) {
  // DOM is ready
} else {
  // DOM is not yet ready
}</code>

Lightweight DOM Ready Snippet

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

<code class="js">if (!/in/.test(document.readyState)) {
  // Document is ready
} else {
  // Document is not ready
}</code>

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

위 내용은 프레임워크 없이 DOM 준비 상태를 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.