digunakan untuk melaksanakan kod selepas DOM dimuatkan sepenuhnya. Oleh kerana ia melaksanakan fungsi yang diberikan apabila semua elemen DOM tersedia, ia memastikan bahawa cuba untuk mengakses atau mengendalikan elemen berfungsi dengan baik. $(document).ready()
$(document).ready(function() { // .ready() 的处理程序被调用。 });
document.ready
) telah ditetapkan semula. $(handler);
Acara DOMContentLoaded
kaedah yang boleh digunakan dalam pelayar moden dan IE9. Untuk versi lama IE, acara jQuery ready
boleh digunakan. onreadystatechange
</body>
ready()
dalam beberapa cara: ready
$(document).ready(handler);
$().ready(handler);
$(handler);
tidak berbeza daripada memanggilnya pada elemen dokumen, dan masa pencetus fungsi panggilan balik tidak ada kaitan dengan pemuatan elemen yang ditentukan. Sebaliknya, ia akan dipanggil selepas seluruh DOM dimuatkan sepenuhnya. $("img")
ditolak. Alasan rasmi ialah: $(handler);
Ini kerana pilihan tidak ada kaitan dengan tingkah laku kaedah, yang tidak cekap dan boleh membawa kepada andaian palsu mengenai tingkah laku kaedah.
.ready()
ready
Acara load
selepas DOM dan semua sumber telah dimuatkan. ready
load
load
$(window).on("load", function(){ // 所有资源(包括图像)加载完毕时的处理程序 });
untuk operasi DOM biasa, anda mungkin tidak memerlukan acara
, tetapi jika anda ingin menunjukkan pemutar beban sebelum semua sumber dimuatkan, atau jika anda ingin melakukan beberapa pengiraan dengan saiz imej, itu mungkin betul pilihan. ready
memastikan bahawa kod itu dilaksanakan hanya apabila semua elemen DOM selamat dan boleh dilakukan. Tetapi apa maksudnya? Apabila anda melaksanakan kod JavaScript dalam bahagian <body>
dari dokumen HTML, ini akan memastikan bahawa kod tersebut dilaksanakan selepas penyemak imbas juga memuat semua elemen berikutnya (contohnya, <code><p>
unsur -unsur):
$(document).ready(function() { // .ready() 的处理程序被调用。 });
Jika anda melaksanakan kod JavaScript sebagai perkara terakhir dalam <body>
, anda mungkin tidak perlu membungkusnya dalam ready()
kerana semua elemen yang anda boleh cuba untuk beroperasi atau akses dimuatkan:
$(window).on("load", function(){ // 所有资源(包括图像)加载完毕时的处理程序 });
ready()
Alternatif untuk pelayar moden dan IE9, anda boleh mendengar DOMContentLoaded
acara:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>.ready() 教程</title> <🎜> </head> <body> <🎜> <p>我是这个网站的内容</p> </body> </html>
(rujukan) dan melaksanakan fungsi panggil balik dengan segera jika ia telah selesai: readyState
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>.ready() 教程</title> </head> <body> <p>我是这个网站的内容</p> <🎜> <🎜> </body> </html>
versi lama Internet Explorer
untuk mengesan dokumen onreadystatechange
: readyState
document.addEventListener("DOMContentLoaded", function(){ // DOM 完全加载时的处理程序 });
seperti jQuery, kerana ini akan berfungsi dalam mana -mana penyemak imbas. Ini juga menyebabkan kelewatan masa, kerana ia akan menunggu semua sumber untuk dimuatkan. Ambil perhatian bahawa anda juga perlu menyemak load
seperti yang dijelaskan di atas untuk memastikan bahawa fungsi panggil balik masih akan dilaksanakan walaupun acara itu telah dipecat. readyState
, anda boleh menggunakan acara ready
. Jika keperluan sistem anda termasuk IE, anda mungkin perlu menggunakan peristiwa DOMContentLoaded
atau onreadystatechange
acara. load
, tetapi ingat untuk mengelakkan penggunaan (decrecated) document.ready
pada unsur -unsur seperti yang disebutkan sebelumnya (contohnya ready()
). $(document).ready()
dan anda boleh memastikan DOM dimuatkan!
Atas ialah kandungan terperinci Ganti Fungsi Sedia Dokumen JQuery dengan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!