Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Window.onload vs onDocumentReady trong JavaScript

Cả hai đều thực thi code khi trang tải xong, nhưng có khác biệt quan trọng về thời điểm và cách thức.

Window.onload

Chạy khi cả cây DOM và tất cả tài nguyên (hình ảnh, stylesheet, script, object...) đã tải xong hoàn toàn.

onDocumentReady (thường dùng qua jQuery: $(document).ready())

Chạy ngay khi cây DOM đã sẵn sàng, không chờ hình ảnh hay tài nguyên khác tải xong. Giúp code thao tác DOM chạy sớm hơn.

Khác biệt về tương thích trình duyệt

  • window.onload: Không đồng nhất cross-browser.
  • jQuery.document.ready() / DOMContentLoaded: Hoạt động nhất quán trên mọi trình duyệt hiện đại.

Khuyến nghị: Dùng DOMContentLoaded (vanilla JS) hoặc $(document).ready() (jQuery) để thao tác DOM sớm nhất có thể.