Kod adalah seperti berikut:
jQuery.ready.promise = function( obj ) {
Jika ( !readyList ) {
readyList = jQuery.Deferred();
//Menunjukkan bahawa halaman telah dimuatkan, panggil kaedah sedia secara terus jika (document.readyState === "lengkap") {
jika tidak (document.addEventListener) //
//Ini adalah untuk memastikan bahawa semua pelaksanaan sedia dilengkapkan Jika kaedah DOMContentLoaded dilaksanakan, nilai status isReady akan ditetapkan kepada benar, //Setelah kaedah sedia dilaksanakan, ia hanya akan dilaksanakan sekali, dan sedia dalam window.addEventListener akan Diganggu oleh tetingkap kembali.addEventListener("load", jQuery.ready, false );
} lain {
menggunakan menggunakan menggunakan menggunakan menggunakan menggunakan untuk menggunakan melalui menggunakan '' s ' through ' s ' melalui menggunakan ' through ' s ' melalui menggunakan ' through ' s ' through ' through ' s ' through ' through to ‐ to ‐‐‐‐‐‐ ‐‐
window.attachEvent( "onload", jQuery.ready );
var atas = palsu;
cuba {
atas = window.frameElement == null && document.documentElement
} tangkapan (e) {}
Jika ( atas && atas.doScroll ) // Alih keluar komponen iframe
(fungsi doScrollCheck() {
Jika ( !jQuery.isReady ) {
cuba {
//Serasi dengan versi IE yang lebih rendah berdasarkan pepijat
http://javascript.nwbox.com/IEContentLoaded/
} Tangkap (e) {
// Disebabkan versi pelayar IE yang rendah, insiden OnreadyStateChange tidak boleh dipercayai, jadi anda perlu menentukan sama ada halaman telah dimuatkan mengikut setiap BUG untuk melengkapkan Return Settimeout (DOSCROLLCHECK, 50);
jQuery.ready();
})();
}
}
}
Kembalikan readyList.promise( obj );
};
sedia: fungsi( tunggu )
{
jika ( tunggu === benar ? --jQuery.readyWait : jQuery.isReady ) {
//Tentukan sama ada halaman telah selesai dimuatkan dan sama ada kaedah sedia telah dilaksanakan
kembali;
}
jika ( !document.body ) {
Kembalikan setTimeout( jQuery.ready );
}
jQuery.isReady = true; //Menunjukkan bahawa kaedah sedia telah dilaksanakan
jika ( tunggu !== benar && --jQuery.readyTunggu > 0 ) {
kembali;
}
readyList.resolveWith( dokumen, [ jQuery ] );
jika (jQuery.fn.trigger) {
jQuery(document).trigger("ready").off("ready");
}
},
Ringkasan:
Terdapat dua peristiwa apabila halaman dimuatkan, Satu telah sedia, yang menunjukkan bahawa struktur dokumen telah dimuatkan (tidak termasuk fail media bukan teks seperti imej, yang menunjukkan bahawa semua elemen halaman termasuk imej dan fail lain telah dimuatkan. (Boleh dikatakan: siap dimuatkan sebelum dimuatkan!!!)
Kawalan gaya umum, seperti kawalan saiz imej, dimuatkan dalam beban;
Kaedah yang dicetuskan oleh acara jS boleh dimuatkan dalam sedia;