Tôi có một trang html đang tải nhiều khung nội tuyến vào đó là hình ảnh động được nhúng được tạo từ trang máy chủ Tomcat (.jsp). Điều này hoạt động như mong đợi từ Chrome và Firefox, nhưng vì một số lý do, IE hiển thị tất cả các hình ảnh giống nhau (như hình ảnh đầu tiên). Tôi đã tạo một ví dụ:
Sự cố lưu vào bộ nhớ cache hình ảnh động của IE?
http://coupondiscounts.com/jsImageTest.html
jsImageTest.html - Trang này chỉ đơn giản là tải 6 trường hợp của trang testImageFrame.html trong iframe riêng một-at-a-thời gian, sử dụng Javascript.
testImageFrame.html - Đây là trang được tải trong tất cả các iframe. Nó chỉ chứa một khối JavaScript viết ra thời gian hiện tại và một thẻ img. Img được tạo động bởi trang .jsp trên một máy chủ khác. Nó sẽ là một hộp màu trắng trên nền đen. Trong hộp là thời gian hiện tại (từ máy chủ Tomcat sử dụng Java) và một cặp đôi được tạo ngẫu nhiên giữa 0 & 1.
Điều gì xảy ra (trong IE): Trang gần như ngay lập tức tải bốn iframe giống hệt nhau. Tùy thuộc vào tốc độ của máy, thời gian JavaScript có thể thay đổi theo một hoặc hai giây. Thời gian của hình ảnh sẽ giống nhau sẽ là số ngẫu nhiên. Điều này đúng ngay cả đối với hai iframe cuối cùng được tải 5 và 10 giây sau khi các iframe khác (sử dụng JavaScript setTimeout()).
Điều gì sẽ xảy ra (giống như trong Chrome và FF): Trang tải cùng 4 iframe, nhưng các số ngẫu nhiên trong hình ảnh sẽ khác nhau. Thời gian trong các hình ảnh đôi khi kéo dài một giây là tốt.
Bất kỳ ai có manh mối về những gì đang xảy ra ở đây? IE có đang thực hiện một số bộ nhớ đệm lạ? Tiêu đề hình ảnh có "không có bộ nhớ cache", "không lưu trữ" và tất cả điều đó. Tôi đã thử nó trên IE6 và 7. Bạn có thể sử dụng nút "Next" để tạo iframe khác. Trong IE, các hình ảnh luôn giống nhau.
Lưu ý: Tôi không thực sự cần iframe, chỉ là hình ảnh, nhưng nếu tôi chỉ sử dụng thẻ img, sự cố cũng xuất hiện trong Chrome và FF. Tôi cũng không thực sự cần tải các iframe động này, tôi chỉ đang cố gắng trừu tượng thêm vấn đề và cho phép tải trễ cho 2 hình ảnh sau.
-1 vì OP đã tuyên bố họ đã thử các bước này. – Jaymz
... Undid downvote cho setDateHeader :) – Jaymz
Tôi cũng đã nói một biến phá vỡ bộ nhớ cache. Nhiều trình duyệt sẽ không cache một trang có '? 'Trong url. Vì vậy, anh ta có thể sử dụng: http://hostname.com/mypage.jsp?time = sometime Edit: TY :) –