лучшим способом для фотогалереи (если то, что вы строите), как правило, имеет несколько размеров изображений, по крайней мере, два:
- небольшого размер с высокой степенью сжатия и, таким образом небольшая занимаемая площадь: это изображение, которое вы загружаете в сетки и отображаете на странице, где e multiple images
- увеличенное изображение с более низким сжатием и более высоким качеством изображения - это тот, который вы показываете, когда люди хотят видеть детали.
Поскольку люди чаще всего приходят к подробному изображению со страницы, на которой была показана небольшая/быстрая загрузка, и, таким образом, она уже находится в кеше браузеров, вы делаете небольшой трюк и имеете мгновенные фотографии без предустановить что-нибудь.
Это выглядит следующим образом:
На странице сведений вы показываете высокую степень сжатия небольшого изображения в тег изображения, который имеет размерность большей подробной версии. Затем вы загружаете более крупную подробную версию в фоновом режиме, используя new Image()
с присоединенным событием onload
, которое изменяет источник тега изображения с небольшой сжатой версией на большую подробную версию.
Он отлично выглядит, работает быстро, и пользователи будут любить вас;)
PS: лучший способ для хранения изображений является кэш браузеров, не JS или DOM, так что если вы действительно хотите, чтобы поджать изображения, которые обычно бывает плохой практикой (иногда это может потребоваться), заставьте браузер забрать их для вас в фоновом режиме, включив файл css, который ссылается на них в стилях, которые не применяются к визуальным областям вашего сайта.