2010-10-13 2 views
0

У меня есть изображение с установленным атрибутом src.Предварительно загружает изображение в Javascript (без какой-либо библиотеки JS)?

Я хотел был бы заменить изображение, но соединение с сервером идет медленно и время, необходимое для загрузки нового изображения, не является незначительным.

Есть ли возможность создать внутренний объект изображения, установить на нем «onLoadListener», загрузить изображение, а затем установить его в исходный атрибут src изображения?

+0

Возможно, но это зависит от настроек кэширования клиента. Если кеширование полностью отключено клиентом, у вас будет счетчик удвоенных запросов. (один для попытки предварительной загрузки изображения, один для фактического отображения) (с помощью 'Image') – Lekensteyn

+0

К счастью, кеширование включено в моем случае использования :) – pixel

ответ

2

Вы можете предварительно загружать изображения в JavaScript, как это ...

myImage = new Image(); 
myImage.onload = function() { alert("Loaded"); }; 
myImage.src = "logo.gif"; 

Вы можете поместить логику совать изображения на странице вместо предупреждения -ing.

+0

Но когда мое соединение медленное, пользователь некоторое время увидит пустое изображение. Поэтому я должен загрузить Image как это и установить myActualImageOnPage.src = myImage.src – pixel

+0

@pixel да, он означает изменить 'src' на ваш реальный элемент во время' onload' метода вашего объекта фиктивного изображения. – lincolnk

Смежные вопросы