Чтобы снять прелоадер когда загружены все картинки, нужен ивент который показывает что эти картинки загрузились
Ивент может показаться только когда мы используем тег
однако мы не можем использовать , так как нам надо менять разрешение картинок при разных разрешениях экрана, поэтому мы используем свойство css background для класса и вешаем этот класс на элемент (то есть картинку вешаем таким образом)
при использовании свойства background отследить ивент когда все картинки загрузились нельзя, поэтому мы и не можем реализовать скрытие прелоадера, когда все картинки загрузились
решение: сделать таймер с задержкой (примерно 3 сек) после того как контент сайта загрузился, чтобы успели подгрузиться картинки
Это решение нам предлагают наши верстальщики - вставить огромный костыль, вместо правильно работающего прелоадера. Уважаемые знатоки, неужели нет способа узнать ТОЧНО, когда пользователь загрузил все картинки сайта?
На отдельно взятой странице, с известным набором картинок, их можно передать списком в js. Js сгенерит скрытые теги, дождется загрузки и удалит их и скроет лоадер.
С неизвестным набором картинок, скрипт может собрать все теги img со страницы, распарсить css (можно не весь, а только заданный набор селекторов), вытащить оттуда линки, добавить их к списку тегов. Далее как и в первом случае - генерим теги, ждем загрузки, удаляем.