Существует ли стандарт для Javascript / jQuery <img />, который еще не был помещен в документ? - PullRequest
0 голосов
/ 28 июля 2010

Существует ли спецификация того, как браузеры обрабатывают загрузку изображения, если тег изображения - это только один из тех элементов Javascript, которые не были вставлены в документ? Пример:

$('<img src="/path/to/image.jpg" />')

Существует ли спецификация, которая указывает изображение для загрузки? Я спрашиваю, потому что меня интересует следующая реализация:

  1. Событие при наведении курсора на миниатюру вызывает загрузку большего изображения для предварительного просмотра.
  2. Более крупное изображение предварительного просмотра загружает и вызывает событие загрузки, после чего оно накладывается поверх исходного элемента наведения мыши.

Реализация (2) не сложна, но я хочу быть уверен, что могу рассчитывать на событие load в разных браузерах. Я попробовал его в Firebug и консоли Chrome, и, кажется, он работает нормально, но я не сталкивался со спецификацией, говорящей мне, что она всегда будет работать. Я бы не сказал, чтобы браузер отказывался загружать изображение, которое не было помещено в document.

1 Ответ

2 голосов
/ 28 июля 2010

Событие load должно запускаться последовательно во всех современных браузерах. У вас могут быть проблемы с устаревшими браузерами (до IE6). Я должен порекомендовать вам назначить обработчик события загрузки перед установкой src. Это гарантирует, что событие сработает ...

$("<img />").load(function() {
  alert("Loaded!");
  $(this).css("border", "solid 2px black").appendTo("body");  
}).src("/path/to/image.jpg");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...