Skrip tidak memiliki penggunaan aktual hingga HTML selesai dimuat - skrip tidak dapat mengubah DOM sampai HTML dimuat. document.ready
menunggu DOM dimuat. Jadi, tidak ada gunanya memegang hal-hal penting seperti stylesheet.
Letakkan skrip di bagian bawah halaman (sebelum </body>
tag) untuk memesan untuk mendapatkan HTML dan CSS Anda kepada pengguna secepat mungkin. Peramban akan dapat merender halaman lebih cepat dan kemudian skrip dapat dimuat, daripada meninggalkan halaman kosong bagi pengguna untuk menatap sementara mereka menunggu skrip untuk diunduh.
Sementara browser secara progresif merender halaman, jika hits tag skrip (yaitu file Javascript eksternal) semuanya berhenti . Skrip memiliki hak jalan - saat skrip sedang mengunduh, peramban tidak akan memulai unduhan lainnya. yaitu Gambar dan stylesheet dan unduhan paralel lainnya akan diblokir, bahkan pada nama host yang berbeda.
Kerugian menempatkan skrip di bagian bawah halaman adalah karena halaman akan di-render sebelum skrip diinisialisasi, terutama clicker cepat akan dapat berinteraksi dengan situs Anda sebelum Javascript siap.
Catatan: Kebalikannya berlaku untuk Stylesheets - Stylesheets di dekat bagian bawah blok render progresif sampai semua stylesheet diunduh dan memindahkannya ke dokumen HEAD
menghilangkan masalah.
Ada trik yang rapi untuk memuat javascript tanpa membuat pengguna menunggu, Anda dapat membuat <script/>
elemen menggunakan createElement()
metode DOM dan menambahkannya ke halaman sebelum </body>
tag penutup :
var oScript = document.createElement("script");
oScript.src = "/path/to/my.js";
document.body.appendChild(oScript);
Browser tidak mulai mengunduh skrip js hingga <script/>
elemen baru benar-benar ditambahkan ke halaman. Setelah unduhan selesai, browser mengartikan kode Javascript yang terkandung di dalamnya.