Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как организовать загрузку всех ресурсов при старте (https://javascript.ru/forum/jquery/54438-kak-organizovat-zagruzku-vsekh-resursov-pri-starte.html)

paulsk 17.03.2015 15:13

Как организовать загрузку всех ресурсов при старте
 
Добрый день.
В данный момент я разрабатываю небольшой web-сервис, который
будет выводить информацию с различного оборудования. При переходе по различным пунктам меню в div контента посредством JQuery AJAX (методы get, load) подгружаются данные: графики, картинки и т.д. При этом тратится некоторое время на подгрузку картинок.
Вопрос:
Есть ли возможность в JQuery при старте(index.php) загрузить все изображения, а потом передавать их в div контента, а не подгружать постоянно при переходе на тот или иной пункт меню?
Пример кода:
<script>
    //Здесь загружаем все изображения
</script>
<div class='layer' id='layer' align='center'>
     <div class='header' id='header'>
	 <!--Шапка-->
     </div>
     <div class='left_menu' id='left_menu'>
         <!--Боковое меню-->
     </div>
     <div class='content' id='content'>
         <!--Контент-->
     </div>
</div>

ksa 17.03.2015 15:17

Цитата:

Сообщение от paulsk
загрузить все изображения

http://javascript.ru/forum/dom-windo...razhenijj.html

danik.js 17.03.2015 15:21

А что в этом плохого? Зато пользователь не будет грузить то, чем возможно даже и не воспользуется.

Но если всё же, то можно в фоновом режиме подгружать наиболее посещаемые страницы. При этом результат парсить - это будет инициировать подгрузку картинок.

При клике на пункт меню страница будет отображаться из кэша моментально, без запроса на сервер.

paulsk 17.03.2015 15:41

Дело в том, что это будет небольшой web сервер для бюджетных систем домашней автоматизации. И не красиво будет смотреться, когда кто-то нажимает на пункт меню(он должен подсветиться зелёным - загрузиться другая картинка) его фоновая картинка активности ещё не загрузилась, а загруженный контент уже соответствует выбранному пункту.

ksa 17.03.2015 16:30

Цитата:

Сообщение от paulsk
не красиво будет смотреться, когда кто-то нажимает на пункт меню(он должен подсветиться зелёным - загрузиться другая картинка) его фоновая картинка активности ещё не загрузилась, а загруженный контент уже соответствует выбранному пункту.

Используй спрайты...
http://htmlbook.ru/faq/kak-sdelat-ch...vedenii-na-nee

paulsk 17.03.2015 17:07

А если просто создать отдельный div и туда методом load с периодичностью(допустим 5 сек), подгружать hidden-картинки, а при клике
на пункт меню передавать их src.
Пример:
$('#set_images0').bind('click', function(){
update_menu(); //Обновляем все меню (делаем не активными)
$('#content').load('/php/content.php');//Загружаем контент
$('#set_images0').attr( 'src',$('#menu_act0').attr('src'));//Подсвечиваем активный пункт меню (передаём src картинки)
});


Часовой пояс GMT +3, время: 03:55.