Как заставить браузер использовать закэшированное изображение?
Привет
Столкнулся с такой проблемой, что в некоторых случаях после того, как изображение было закэшировано и снова пытаюсь его использовать - оно загружается второй раз, не смотря на то, что оно уже было загружено. Точно вопсроизвести могу так (только в Firefox): Загружаю страницу - всё работает, нажимаю Ctrl+F5 - страница перегружается и после этого все картинки грузятся по два раза - один раз прелоад, второй раз когда я присваиваю значение SRC нужному IMG. У некоторых пользователей этот эффект наблюдается и в Google Chrome и без перезагрузки страницы, просто открыв. Может я не так прелоаденый файл использую или есть варианты решения моей проблемы? Пример кода http://fog.od.ua/files/load/ |
То, что картинки грузятся два раза - видно как сниффером, так и по тому, что после появления в строке статуса Waiting - новая картинка всё ещё подгружается.
Если обновить нажав F5 - всё опять работает нормально. |
Просто скрывайте картинку пока она грузится и показывайте по onload.
|
Тоже, конечно, вариант...
|
Подумал над предложением, к сожалению, в моём случае это не получается использовать.
То что я показал - это лишь кусочек кода результата. На самом деле скрипт должен работать так: - По умолчанию загружено изображение - Пользователь кликает на превью следующего - Следующее начинает прелоадиться, а в этот момент на экране появляется индикатор загрузки "крутилка", пока он крутится - предыдущее изображение отображается. - Когда следующее изображение загрузилось - Предыдущее плавно растворяется и на его месте "всплывает" следующее. Тоесть скрыть изображение, присвоить ему новый SRC и показать когда оно загрузится - я не могу, потому что слишком долго на экране ничего не будет (когда первое уже исчезнет а второе ещё не появится). |
Сделайте 2 изображения и меняйте их.
|
Часовой пояс GMT +3, время: 20:16. |