này không được ghi nhận, tôi không nghĩ, nhưng nếu bạn nhìn vào mã jQuery cho $(document).ready
:
// If the DOM is already ready
if (jQuery.isReady) {
// Execute the function immediately
fn.call(document, jQuery);
} // ...
Như vậy, đối với một cách mà có thể thay đổi, bạn có thể sử dụng $.isReady
hoặc jQuery.isReady
.
Cách tốt hơn là sử dụng $(document).ready
trong dòng. ví dụ.:
function myClickHandler(event) {
// do stuff
$(document).ready(function() {
// Do this immediately if DOM is loaded, or once it's loaded otherwise.
}
}
Về cơ bản, điều này sử dụng chức năng sẵn sàng làm người bảo vệ. Thay vì câu lệnh if, bạn sử dụng hàm sẵn sàng. Tất nhiên, chức năng sẵn sàng có hành vi mà nó sẽ chạy khi DOM được tải. Nếu hành vi của bạn chỉ muốn một cái gì đó xảy ra nếu nó được tải, nhưng không bao giờ làm điều đó nếu DOM không được tải, sau đó sử dụng cờ ở trên, hoặc thiết lập của riêng bạn, là cách tốt hơn để đi. Thiết riêng bạn:
$(document).ready(function() {
window.domIsReady = true;
}
if (window.domIsReady) {
// do stuff
}
Tạo riêng của bạn có lẽ là tốt hơn, vì jQuery.isReady
dường như không được ghi lại, và do đó có thể không được hỗ trợ và có thể thay đổi bất cứ lúc nào.
Nguồn
2010-05-12 15:37:38
Đây là một trong những bài học đầu tiên trong hướng dẫn jQuery trung bình. Ví dụ bạn đã đọc một? Bạn có thể tìm thấy một số [ở đây] (http://docs.jquery.com/Hướng dẫn). [Hướng dẫn chính] (http://docs.jquery.com/Tutorials:How_jQuery_Works) xử lý điều này đã có trong chương 2. – BalusC
Có, tôi biết chức năng Ready, nhưng làm thế nào để kiểm tra xem DOM đã sẵn sàng chưa? – Lalit
@Litit: DOM là '$ (tài liệu)' trong jQuery. – BalusC