php include и скорость загрузки
Dec. 20th, 2015 03:33 pm![[identity profile]](https://www.dreamwidth.org/img/silk/identity/openid.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
Есть лендинг-пейдж. В нем имеется галерея, работающая примерно по тому же принципу, что и галерея на Behance.net: по клику на миниатюру открывается модальное окно, в котором размещен html-блок с заголовками, картинками и текстом.
Проблема в том, что галерея достаточно большая. Модальных окон довольно много. По умолчанию модальное окно скрыто, появляется лишь по клику на миниатюру. Но html-код каждого из модальных окон все равно присутствует на странице.
Вопрос такой: если на место html-кода каждого модального окна поставить php-конструкцию include (которая занимает лишь 3 строчки кода), а код каждого модального окна сохранить в отдельные html-файлы, повлияет ли это каким-то образом на скорость загрузки страницы в целом? Или это будет шило-на-мыло? Ведь при обработке кода сервером вместо php конструкции просто подставляется html-код всех модальных окон...
Проблема в том, что галерея достаточно большая. Модальных окон довольно много. По умолчанию модальное окно скрыто, появляется лишь по клику на миниатюру. Но html-код каждого из модальных окон все равно присутствует на странице.
Вопрос такой: если на место html-кода каждого модального окна поставить php-конструкцию include (которая занимает лишь 3 строчки кода), а код каждого модального окна сохранить в отдельные html-файлы, повлияет ли это каким-то образом на скорость загрузки страницы в целом? Или это будет шило-на-мыло? Ведь при обработке кода сервером вместо php конструкции просто подставляется html-код всех модальных окон...
no subject
Date: 2015-12-20 12:35 pm (UTC)no subject
Date: 2015-12-20 12:43 pm (UTC)no subject
Date: 2015-12-20 12:54 pm (UTC)и JScript ;)
no subject
Date: 2015-12-20 12:37 pm (UTC)no subject
Date: 2015-12-20 12:56 pm (UTC)no subject
Date: 2015-12-20 01:08 pm (UTC)no subject
Date: 2015-12-20 01:13 pm (UTC)no subject
Date: 2015-12-23 11:45 am (UTC)В фреймворке Jquery Mobile реализована такая фишка: при выборе миниатюры, подгружается полная картинка а также следующая (если она не загружена). Предыдущая же не выгружается. Т.е. загружена просматриваемая картинка и "две по бокам" )). При выборе следующей миниатюры происходит анализ не загружена ли она уже и соответсвенно, если да, то отображается и тут же происходит проходит подгрузка следующей.
Здесь главное учитывать размеры картинок, скорость инета и память устройства, для того чтобы понимать сколько оптимально хранить заранее закаченных данных.
no subject
Date: 2015-12-23 06:01 pm (UTC)На моем сайте имеется jQuery предзагрузчик, он нужен для того, чтобы во время загрузки сайта зрителю не пришлось наблюдать загружающиеся блоки (которые могут в процессе загрузки страницы выглядеть неэстетично).
Меня больше волновало, если есть скрытые модальные окна с кучей картинок, повлияет ли загрузка html-кода на время работы предзагрузчика. Не хотелось бы, чтобы человек, зашедший на сайт в течение двадцати секунд наблюдал крутящуюся звездочку. Но пока что полет нормальный — предзагрузка проходит секунды за три-четыре. С самим же открытием модальных окон проблем не возникает.
no subject
Date: 2015-12-20 01:54 pm (UTC)no subject
Date: 2015-12-20 02:03 pm (UTC)no subject
Date: 2015-12-20 02:09 pm (UTC)no subject
Date: 2015-12-21 06:57 am (UTC)- на клиенте всё равно будет весь html
- на сервере будет дополнительная работа по выаполнению include
Вы правильно сказали: делайте через ajax. Вариантов два:
- после загрузки страницы затягивать содержимое этих окон (все через один запрос)
- подтягивать код окон по необходимости
Оба варианты имеют плюсы и минусы. Выбор зависит от того, насколько часто эти окна требуются. Если часто, то первый вариант. Если изредка – второй.