Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menentukan Kesediaan DOM tanpa Rangka Kerja?

Bagaimana untuk Menentukan Kesediaan DOM tanpa Rangka Kerja?

Patricia Arquette
Patricia Arquetteasal
2024-10-20 10:27:02539semak imbas

How to Determine DOM Readiness without Frameworks?

Memahami Kesediaan DOM tanpa Rangka Kerja

Apabila membangunkan aplikasi web, menentukan masa Model Objek Dokumen (DOM) sedia untuk dimanipulasi adalah penting. Walaupun rangka kerja seperti jQuery menawarkan pendengar readyState, artikel ini meneroka pendekatan alternatif untuk mengesan kesediaan DOM.

Akses Terus ke DOM State

Daripada bergantung pada rangka kerja, anda boleh terus semak sifat document'sreadyState:

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

Walau bagaimanapun, pendekatan ini tidak boleh dipercayai merentas penyemak imbas, kerana sesetengahnya mungkin tidak memberikan nilai readyState yang tepat.

Semakan Sedia DOM Berasaskan Acara

Pendekatan penyemak imbas yang lebih banyak ialah mendengar acara DOMContentLoaded, yang menyala apabila DOM sedia untuk dimanipulasi:

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

Memanfaatkan Harta isReady Tanpa Dokumen jQuery

Walaupun tidak berdokumen, jQuery mendedahkan sifat isReady yang secara dalaman menunjukkan keadaan sedia DOM:

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

Snippet Sedia DOM Ringan

Diilhamkan oleh coretan Dustin Diaz, anda boleh mencipta pendengar sedia DOM mini seperti berikut:

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

Semakan ini memanfaatkan fakta bahawa nilai readyState mengandungi "dalam" dalam keadaan pemuatan awal, menjadikannya penunjuk yang boleh dipercayai bagi Kesediaan DOM.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Kesediaan DOM tanpa Rangka Kerja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn