Я пытаюсь оптимизировать размер моего сайта, когда он выводится клиенту. Я до 1,9 МБ и 29 КБ при кешировании. Проблема в том, что первая загрузка содержит изображение, которое очень неоптимизировано для мобильных устройств; он имеет разрешение 1080p.
Итак, я ищу метод, который позволяет мне сначала загрузить версию с низким разрешением (min.bg.jpg
), и как только сайт загрузится, используйте версию с высоким разрешением - или даже одну с разрешением, близким к устройству (NNNxNNN.bg.jpg
или просто bg.jpg
).
Фон устанавливается с использованием CSS точно так же, как ожидали все. Его применение к телу и всему заявлению выглядит следующим образом:
body {
background: url("/cdn/theme/images/bg.jpg");
color: white;
height: 100%;
width: 100%;
background-repeat: no-repeat;
background-position: 50% 50%;
background-attachment: fixed;
}
Теперь я хочу изменить это, чтобы вместо min.bg.jpg
использовать min.bg.jpg
для первой загрузки, а затем что-то вроде этого:
jQuery(function(){
jQuery("body").[...]
});
В каком порядке я буду асинхронно загружать новый фон, а затем вставлять его в качестве нового фонового изображения CSS?
Чтобы показать некоторые отличия, вот пример основной и мини-версии, которую я использую для тестирования:
[email protected] ~/Work/BIRD3/cdn/theme/images $ file *.jpg
bg.jpg: JPEG image data, EXIF standard
min.bg.jpg: JPEG image data, JFIF standard 1.01
[email protected] ~/Work/BIRD3/cdn/theme/images $ du -h *.jpg
1,0M bg.jpg
620K min.bg.jpg