Rumah >hujung hadapan web >tutorial js >Penjelasan terperinci tentang method_jquery sedia jQuery

Penjelasan terperinci tentang method_jquery sedia jQuery

WBOY
WBOYasal
2016-05-16 16:30:001804semak imbas

Kaedah sedia dalam jQuery mencapai kesan dilaksanakan hanya selepas halaman dimuatkan Namun, ia bukan pakej window.onload atau document.onload Sebaliknya, ia menggunakan DOM pelayar W3C standard untuk menyembunyikan API dan kecacatan pelayar IE Selesai, pertama, mari lihat kod jQuery

Salin kod Kod adalah seperti berikut:

DOMContentLoaded = function()
{
//Batalkan pemantauan acara dan laksanakan kaedah sedia jika (document.addEventListener)
{                                              document.removeEventListener( "DOMContentLoaded", DOMContentLoaded, false );          jQuery.ready();
}
        lain jika (document.readyState === "lengkap") 
{
         document.detachEvent( "onreadystatechange", DOMContentLoaded );          jQuery.ready();
}
};



Salin kod 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 ); };

Salin kod Kod adalah seperti berikut:
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;

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