Я работаю на домашней странице с jquery с 5 или около того скрытых div, каждая из которых содержит несколько изображений css.
Проблема заключается в том, что браузер не загружает css-изображения в DOM до тех пор, пока не будет показана видимость родительского слоя, в результате чего изображения будут медленно загружаться, когда слой станет видимым.
Решения, которые я уже рассмотрел:
- CSS спрайты (слишком много работы для редизайна для этого и обычно не работает при показе/скрытии div)
- Этот плагин jQuery, который автоматически загружает фоновые изображения CSS (просто не работает для меня, как сообщается многими другими).
-
предварительная загрузка изображений через js:
$(function() { function preloadImg(image) { var img = new Image(); img.src = image; } preloadImg('/images/home/search_bg_selected.png'); });
Это решение, кажется, загружает изображение в dom дважды... один раз, когда js загружает его, а затем снова, когда слой div, который загружает его, становится видимым... поэтому он делает 2 HTTP-вызова, таким образом, не работает.
Любые другие решения для этой проблемы, которые мне не хватает?