У меня есть слайдер и загружаю изображения низкого качества, чтобы облегчить быструю загрузку.Google pagespeed-load images без влияния на время рендеринга
на окне готового я загрузке изображения надлежащего размера
function loadImages(){
var images= document.getElementById('dhadimages').getElementsByClassName("dhadsecondimg");
var index;
for (index = 0; index < images.length; ++index) {
images[index].src= images[index].dataset.img;
}
}
window.onload = function() { loadImages(); }
но PageSpeed рассчитывает это как часть времени рендеринга. На данный момент я загружаюсь, когда пользователь нажимает на что-то и, очевидно, это работает, но почему страницы не обнаруживают window.onload
и останавливают там измерения? Существуют ли какие-либо методы, связанные с задержкой или любыми последующими событиями, с которыми нужно связываться?
Вместо того, чтобы пытаться обмануть таймер, выполните оптимизацию изображений, чтобы уменьшить размер файла для одноразовых изображений и, по возможности, сделать спрайты коллекций изображений и использовать CSS, чтобы показать их на своей странице. Таким образом, ваши номера скорости страницы действительно отражают то, с чем должен работать пользователь при использовании вашего сайта/приложения. – Kristian
@ Kristian понимает, что вы говорите, но я не считаю, что он обманывает таймер. Изображения оптимизированы, но они состоят из основного изображения и нескольких миниатюр, которые пользователь может щелкнуть, чтобы сделать основной снимок. Меньшие изображения не изменятся до большего размера, поэтому мне нужно загрузить более высокие значения. Я могу сделать это по щелчку, но потом на мобильных устройствах небольшая задержка. – David
вы также можете создавать специальные фоны CSS-изображений для разрешений в некотором диапазоне ... таким образом, изображение с высоким разрешением не загружается для небольших устройств, и наоборот – Kristian