PLUGINКак обрабатывать «образ испорчен или усеченный» в светлячок
Я использую JQuery plugi называется lazyload.
Что это такое - lazy
Загрузить изображения - это означает, что они не отображают их в браузере, пока изображение не попадет в область просмотра.
Это полезно, если у вас есть страница с большим количеством изображений, например, и вы не хотите, чтобы она вечно проводилась с начальной загрузкой.
FireFox
Ok, поэтому я также использую Firefox
версии 23.0.1
ПРОБЛЕМА
Пробка в большой, однако при прокрутке вниз после некоторых изображений я начала получать ошибки, где изображение не загружается (просто имеет общий держатель места для сломанной ссылки на изображение), а в консоли это журналов:
Image corrupt or truncated: [image url]
Это не то, что есть проблема с изображением. Все они делают индивидуально.
Это не на КОНКРЕТНОМ изображении, так как оно случайное. Если я снова загружу страницу, изображения, которые были corrupt
, могут загружаться сейчас, а другие изображения возвращают неработающую ссылку и регистрируют corrupt
в консоли.
Я искал вокруг этого, и кажется, что существует некоторая проблема с одновременными выборками для тега src <img>
.
Возможно, на выборке должна быть установлена задержка, однако вы не всегда можете сказать, как долго должна быть задержка. И если одно изображение больше другого, оно все равно может конфликтовать (со статическим временем задержки, в отличие от обратного вызова complete
).
Поэтому Я хотел бы запросить:
а) Если кто-нибудь знает решение этой (например, ловли, когда происходит ошибка, и повторно вызвав функцию загрузки изображения)
b) Если кто-то может предложить $.extend()
в библиотеке выше (lazyload), которая создаст функцию обратного вызова и дождитесь, пока все активные выборки будут complete
перед загрузкой следующего (если это проблема - я не уверен, что это так) Я не jQuery ni nja, поэтому я немного потерял код. Я мог бы понять это, но это, вероятно, будет грязно ...
с), если это не проблема, то некоторые направления о том, как я могу решить эту проблему было бы оценено
Проверьте вкладку своей сети в консоли браузера/инструментах разработчика. Как выглядят запросы на изображение? Какие заголовки вы получаете с сервера? p/s: 'Если кто-то может предложить $.extend() в библиотеку выше ... это не так, как работает SO. – Terry
Спасибо - я проверил вкладку сети, и каждый файл вызывается и получает код HTTP-статуса 200. Таким образом, файл существует. Некоторые делают, некоторые не делают. Это не похоже на размер файла. Что-нибудь еще я должен проверить? ... –
Вы могли бы поделиться кодом в jsfiddle, его трудно предсказать, что вызывает проблему. –