Как организовать загрузку всех ресурсов при старте
Добрый день.
В данный момент я разрабатываю небольшой 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> |
Цитата:
|
А что в этом плохого? Зато пользователь не будет грузить то, чем возможно даже и не воспользуется.
Но если всё же, то можно в фоновом режиме подгружать наиболее посещаемые страницы. При этом результат парсить - это будет инициировать подгрузку картинок. При клике на пункт меню страница будет отображаться из кэша моментально, без запроса на сервер. |
Дело в том, что это будет небольшой web сервер для бюджетных систем домашней автоматизации. И не красиво будет смотреться, когда кто-то нажимает на пункт меню(он должен подсветиться зелёным - загрузиться другая картинка) его фоновая картинка активности ещё не загрузилась, а загруженный контент уже соответствует выбранному пункту.
|
Цитата:
http://htmlbook.ru/faq/kak-sdelat-ch...vedenii-na-nee |
А если просто создать отдельный 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. |