«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как определить готовность DOM без фреймворков?

Как определить готовность DOM без фреймворков?

Опубликовано 23 декабря 2024 г.
Просматривать:606

How to Determine DOM Readiness without Frameworks?

Понимание готовности DOM без фреймворков

При разработке веб-приложений решающее значение имеет определение того, когда объектная модель документа (DOM) готова к манипуляциям. Хотя такие платформы, как jQuery, предлагают прослушиватели ReadyState, в этой статье рассматриваются альтернативные подходы к определению готовности DOM.

Прямой доступ к состоянию DOM

Вместо того, чтобы полагаться на платформы, вы можете напрямую проверьте свойство ReadyState документа:

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

Однако этот подход ненадежен во всех браузерах, поскольку некоторые из них могут не предоставлять точное значение ReadyState.

Проверка готовности DOM на основе событий

Более кроссбраузерный подход — прослушивать событие DOMContentLoaded, которое срабатывает, когда DOM готов к использованию. манипуляция:

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

Использование недокументированного свойства isReady jQuery

Несмотря на то, что jQuery недокументировано, он предоставляет свойство isReady, которое внутренне указывает на состояние готовности DOM:

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

Облегченный фрагмент готового DOM

Вдохновленный фрагментом Дастина Диаса, вы можете создать мини-прослушиватель, готовый к 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