2011-07-26 32 views
6

Bất cứ ai có thể giải thích cho tôi tại sao những khoảng trống đó (được đánh dấu bằng?) Có ở đó không? Họ đang trì hoãn việc tải trang. Tôi nghĩ rằng nó có thể là thời gian phân tích trang/script, nhưng ~ 350ms trông quá nhiều cho một trang đơn giản; Được rồi, có rất nhiều kịch bản, nhưng nó vẫn trông rất nhiều.Tại sao trình duyệt chờ để kết thúc tải trang?

Có thể là gì?

Chrome page speed screenshot

+1

Sử dụng chế độ xem Dòng thời gian để xem điều gì khác đang xảy ra. –

+1

Nếu bạn xóa tập lệnh, hiệu ứng này vẫn còn? – Aristos

+1

Bạn có thể xác minh điều này bằng các công cụ khác như firebug không? –

Trả lời

1

Tôi đoán đó là sự cố tải JavaScript. Bạn nên giảm tải JavaScript bằng cách sử dụng thuộc tính trì hoãn. Điều này sẽ cho phép trang tải trước khi nó thực thi mã JavaScript.

Điều này là do trình duyệt là chuỗi đơn và khi chúng gặp phải thẻ tập lệnh, chúng sẽ tạm dừng bất kỳ quy trình nào khác cho đến khi chúng tải xuống và phân tích cú pháp tập lệnh. Bằng cách bao gồm các tập lệnh ở phần cuối, bạn cho phép trình duyệt tải xuống và hiển thị tất cả các phần tử trang, tờ mẫu và hình ảnh mà không bị chậm trễ không cần thiết. Ngoài ra, nếu trình duyệt hiển thị trang trước khi thực thi bất kỳ tập lệnh nào, bạn biết rằng tất cả các phần tử trang đã có sẵn để truy xuất.

Xem http://www.hunlock.com/blogs/Deferred_Javascripthttp://blog.fedecarg.com/2011/07/12/javascript-asynchronous-script-loading-and-lazy-loading/

0

là CSS của bạn trong phần tiêu đề?

Khác trình duyệt của bạn có thể chờ khá lâu trước khi thử tải các tài nguyên.

Dự đoán thứ hai là JavaScript của bạn đang chặn tải trang vì bất kỳ lý do gì. Có bất kỳ thao tác DOM nào ngay sau khi tải không? Ngoài ra, JavaScript của bạn có nằm ở cuối trang của bạn, được tải cuối cùng không? Khác điều này có khả năng có thể chặn tải.

Các vấn đề liên quan