jQuery: вопрос о предварительной загрузке изображения - PullRequest
0 голосов
/ 08 августа 2010

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

Я использую этот код:

var icon = $('<img />').attr('src', 'images/status.gif');

мой вопрос: будет ли изображение кэшироваться + показываться также при использовании jQuery для создания html-разметки значка?как:

statusDiv.html("<img src='images/status.gif'> Submitting ..");

thx

Ответы [ 2 ]

2 голосов
/ 08 августа 2010

Да, при этом изображение будет извлекаться из кэша :) Это не jQuery специально, это просто поведение собственного браузера, независимо от того, каким образом вы создаете изображение, должно работать.

Исключением здесь является Opera IIRC, оно не будет предварительно загружать изображение по умолчанию, поскольку понимает, что оно еще не отображается, за исключением того случая, когда оно должно вести себя так, как вы хотите.

Другой возможный случай - изображение, которое еще не было загружено, например. если я нажму "отправить" действительно быстро после загрузки страницы, но это вряд ли возможно, и запрос на получение изображения уже должен быть запущен.


Кроме того, вы можете сократить предварительную нагрузку, если это только для этого изображения:

var icon = $('<img src="images/status.gif" />');
1 голос
/ 08 августа 2010

Может быть, вы могли бы попытаться разместить его в нужном месте, просто с помощью XHTML, и сделать его невидимым с помощью CSS. Я думаю, что он будет загружен, и при нажатии вы сделаете его видимым.

Вы можете проверить вашу сетевую вкладку в firebug.

Пожалуйста, дайте нам знать, что работает.

...