Rumah > Artikel > hujung hadapan web > Adakah Terdapat Cara Alternatif untuk Memeriksa Kesediaan DOM dalam Javascript Tanpa Menggunakan Rangka Kerja?
Menentukan Kesediaan Dokumen dalam Javascript
Soalan:
Adakah terdapat cara alternatif untuk menyemak untuk kesediaan DOM dalam Javascript, tanpa bergantung pada rangka kerja seperti prototaip atau jQuery?
Jawapan:
Pilihan 1: DOMContentLoaded Event
Acara DOMContentLoaded menyala apabila dokumen HTML awal telah dihuraikan dan DOM sedia untuk dimanipulasi. Untuk menggunakan acara ini:
function fireOnReady() { /* ... */ } if (document.readyState === 'complete') { fireOnReady(); } else { document.addEventListener("DOMContentLoaded", fireOnReady); }
Perhatikan bahawa acara ini hanya berlaku sekali apabila halaman dimuatkan.
Pilihan 2: Harta Sedia jQuery (Tidak Berdokumen)
jQuery mempunyai harta tidak berdokumen yang dipanggil isReady yang boleh digunakan untuk menyemak kesediaan DOM:
if($.isReady) { // DOM is ready } else { // DOM is not yet ready }
Walaupun harta ini boleh dipercayai, ia tidak didokumenkan secara rasmi dan mungkin dialih keluar dalam versi jQuery akan datang.
Pilihan 3: Semakan Keadaan Sedia Tersuai
Diinspirasikan oleh Dustin Diaz, anda boleh membuat coretan sedia DOM tersuai yang menyemak sifat document.readyState:
if( !/in/.test(document.readyState) ) { // document is ready } else { // document is NOT ready }
Ini berfungsi kerana sifat document.readyState melalui tiga keadaan pemuatan: "memuatkan", "interaktif", dan "lengkap". "Memuatkan" dan "interaktif" kedua-duanya mengandungi teks "dalam", menunjukkan bahawa DOM belum lagi sedia.
Atas ialah kandungan terperinci Adakah Terdapat Cara Alternatif untuk Memeriksa Kesediaan DOM dalam Javascript Tanpa Menggunakan Rangka Kerja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!