Dari situs dokumen jQuery API untukready
Ketiga sintaks berikut ini setara:
- $ (document) .ready (handler)
- $ (). ready (handler) (ini tidak disarankan)
- $ (penangan)
Setelah mengerjakan pekerjaan rumah - membaca dan bermain-main dengan kode sumber , saya tidak tahu mengapa
$().ready(handler)
tidak disarankan. Cara pertama dan ketiga, persis sama, opsi ketiga memanggil fungsi siap pada objek jQuery yang di-cache dengan document
:
rootjQuery = jQuery(document);
...
...
// HANDLE: $(function)
// Shortcut for document ready
} else if ( jQuery.isFunction( selector ) ) {
return rootjQuery.ready( selector );
}
Tetapi fungsi siap tidak memiliki interaksi dengan pemilih elemen node yang dipilih, ready
Kode sumber:
ready: function( fn ) {
// Attach the listeners
jQuery.bindReady();
// Add the callback
readyList.add( fn );
return this;
},
Seperti yang Anda lihat, itu hanya menambahkan callback ke antrian internal ( readyList
) dan tidak mengubah atau menggunakan elemen dalam set. Ini memungkinkan Anda memanggil ready
fungsi pada setiap objek jQuery.
Suka:
- pemilih reguler :
$('a').ready(handler)
DEMO - Pemilih yang tidak masuk akal :
$('fdhjhjkdafdsjkjriohfjdnfj').ready(handler)
DEMO - Pemilih tidak ditentukan :
$().ready(handler)
DEMO
Akhirnya ... untuk pertanyaan saya: Mengapa $().ready(handler)
tidak direkomendasikan?