Tôi đang làm việc trên trang chủ dựa trên jquery với 5 hoặc nhiều div bị ẩn, mỗi div chứa một số hình nền css.tải trước hình ảnh CSS ẩn
Vấn đề là trình duyệt không tải hình ảnh css vào DOM cho đến khi khả năng hiển thị của lớp cha được hiển thị, khiến cho hình ảnh tải chậm khi lớp hiển thị.
Solutions Tôi đã xem xét:
- CSS sprites (quá nhiều việc phải thiết kế lại cho điều này, và sẽ không thực sự làm việc khi hiển thị/div ẩn)
- This jQuery plugin rằng hình ảnh nền tự động tải CSS (chỉ đơn giản là không làm việc cho tôi như báo cáo của nhiều người khác).
gia tải những hình ảnh thông qua js:
$(function() { function preloadImg(image) { var img = new Image(); img.src = image; } preloadImg('/images/home/search_bg_selected.png'); });
Giải pháp này dường như tải hình ảnh vào dom hai lần ... một lần khi js tải nó, và sau đó một lần nữa khi lớp div mà tải nó trở nên rõ ràng ... vì vậy nó làm cho 2 cuộc gọi HTTP, do đó không hoạt động.
Bất kỳ giải pháp nào khác cho vấn đề này mà tôi đang thiếu?
Cảm ơn tất cả các đề xuất! Tôi sẽ thử cho bạn vào ngày mai và xem những gì hiệu quả. Tôi đã thử phương pháp div 1x1 nhưng các ứng dụng đường ray tôi đang làm việc với gán một băm bộ nhớ đệm vào cuối url hình ảnh ... do đó, trình duyệt xử lý chúng như những hình ảnh khác nhau như những người trong css. – Cory