• 100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон) • 
Как-то на умном ресурсе краем глаз увидел статью
При создании темы о вопросах для двигателя форумов phpBB ветки 3.0.Х название темы должно начинаться с короткого названия вопроса на русском языке с Большой буквы. Создание тем в данном подфоруме только не о модах. Темы о модах для ветки 3.0.Х в соседнем подфоруме. И помните - Вам тут никто ничего не должен. При малейшем "приказном" тоне в сообщениях - бан на вечно.

    100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 15:28

Как-то на умном ресурсе краем глаз увидел статью о манипуляциях по разгону работы навороченных модами форумов.
Вывод сделал для себя один - при наличии тормозов, надо не удалять причину, а искать выход.
Балансировать между желанием ИМЕТЬ и возможностью УДАЛИТь из-за неработоспособности.
Татьяна5 научила кешировать запросы на некоторое время. Круто... Помогает и ощутимо.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 15:59

Нам советуют вот это для использования:
Код: выделить все
<script type="text/javascript">
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = '<путь к файлу>';
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, <количество миллисекунд после загрузки документа>)}
</script>

Именно это рассинхронизатор и используем. Что делаем в первую очередь? В первую очередь надо определить реальное время загрузки страницы, на которой используются все эти JavaScript, то есть - той, на которой вы запустили великолепный PageSpeed. Раскоментив дебаггер и рефрешнувшись мы видим время (например) - 1.250 сек.
Теперь надо определить время загрузки этой же страницы , НО БЕЗ ВСЕХ УКАЗАННЫХ В СПИСКЕ того PageSpeeda скриптов JavaScript. Это сделать легко - трем все выбранные для рассинхрона строки с JavaScript, чистим пять кешей и перезагружаем страницу. Что мы видим? А мы видим время (например) - 0.485 сек. Во те на!!!! Выбранные нами скрипты отнимают у сервака и браузера почти целую секунду (все как пример)!!!! Но зато теперь мы знаем, что таймеры рассинхрона надо распределить между 0.5 сек и 1.2 сек. Другими цифрами между 500 и ... А вот тут мы впали в ступор, а что же со следующей цифрой? А ничего!!!! Про нее просто надо забыть... Так как мы организуем рассинхрон!!! И распределим его по нарастанию всего 5 милисекунд.
И так. Поехали дальше и подробненько...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 16:00

Возвращаем удаленное в файл и начинаем над ним колдовать...
Первое, что нам попалось на глаза -
Код: выделить все
<script src="{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js"></script>

Кланяться в ножки этому "святому" квери мы не будем и отправляем его в первый аут. В итоге, вместо строки
Код: выделить все
<script src="{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js"></script>

Получаем -
Код: выделить все
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = '{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js';
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 505)}
</script>

Для гарантии выполнения "правил phpo" замените предложенные одиночные скобы на двойные, что в итоге дает нам это:
Код: выделить все
<script>
         function onLoadScript () {
             var scri = document.createElement("script");
             scri.src = "{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 505)}
</script>

Циферку 505 видели? Мы добавили 5 милисеков к основному времени загрузки страницы.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 16:02

Продолжаем издеваться над выбранными JavaScriptдалее и в итоге получаем вместо прежнего куста файла:
Код: выделить все
<script src="{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/jquery.fancybox.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/tooltip.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/swfobject.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/forum_fn.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/scripts.js"></script>
<script src="{T_SUPER_TEMPLATE_PATH}/ccat.js"></script>
<!-- IF S_VIEWFORUM or S_INDEX -->
<script src="{T_SUPER_TEMPLATE_PATH}/crawl.js"></script>
<!-- ENDIF -->
<!-- IF S_VIEWTOPIC -->
<script src="{T_SUPER_TEMPLATE_PATH}/jquery.timers.js"></script>
<!-- ENDIF -->
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 16:03

Такую красоту:
Код: выделить все
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/jquery-1.7.2.min.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 505)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/jquery.fancybox.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 510)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/tooltip.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 515)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/swfobject.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 520)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/forum_fn.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 525)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/scripts.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 530)}
</script>
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/ccat.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 535)}
</script>
<!-- IF S_VIEWFORUM or S_INDEX -->
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/crawl.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 540)}
</script>
<!-- ENDIF -->
<!-- IF S_VIEWTOPIC -->
<script>
         function onLoadScript () {
             var scri = document.createElement('script');
             scri.src = "{T_SUPER_TEMPLATE_PATH}/jquery.timers.js";
             document.body.appendChild(scri);
         }
         window.onload = function () {setTimeout(onLoadScript, 545)}
</script>
<!-- ENDIF -->

Заливаем файл на сервак, чистим пять кешей и перезагружаем страницу....
Мать твою!!! Дебаг все равно показываем 0.5 сек, а скрипты все подгрузились и все работает. Вот это фокус!!!!! И где те чертовы 1.250? А они ушли на дальний кордон...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 

  100500 hover-ов, CSS4 и маленький сюрпраЙз (разгон)

Сообщение Разместил Pthelovod 05 янв 2018, 16:03

Но самое главное - нас похвалил PageSpeeda
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Счастливым ты не станешь никогда, если не пройдешь неоднократно надежды полный путь туда и безнадежный путь обратно.
Господи! Помоги мне встать на ноги. Хотя, чего это я. Ведь когда я падал, тебя рядом почему-то не было. Где ты был тогда?

Pthelovod
Александр (можно Николаич)
Александр (можно Николаич) 
Предыдущая страница

Вернуться в Вопросы и проблемы по движку phpBB версий до 3.0.Х



 • Блок вывода аналогичных по названию других тем нашего форума •