Ускоряем Загрузку Форумов с перегруженным
скриптами и кодам НTML низ.
Статья актуальна для форумов, где коды HTML низ
по объему больше полу-страницы текста, при меньших объемах
- ускорения возможно не будет.
Основа идеи применение новых возможностей форума, см. 22 октября 2011г.: Решение для хранения файлов скриптов и дизайна плюс идея, что загружаемые css и js файлы жестко кешируются браузером, а значит не требуют повторной перезагрузки, при повторном использовании на последующих страницах.
Как это реализовать:
1. Сохранить Текущий HTML низ в Админ топик, дабы застраховаться и иметь возможность восстановить всё при ошибках выполнения текущей задачи
Кнопку с баннерами(для скрытия баннеров) и картинку-логотип для HTML низ, - сразу отделяем и переставляем в самый низ HTML низ.
.
2. Далее - Открываем - И сохраняем на "Рабочий Cтол" (кнопка в браузере - файл - сохранить как)
файл => http://forumstatic.ru/files/000c/c1/da/27314.css
Открываем файл и Вставляем весь контент HTML низ(кроме контента Кнопки с банерами и счетчиков, и картинки-логотипа, см замечания про кнопку с баннерами)
Далее - Загружаем Данный Файл в Администрирование -Файлы, запоминаем-записываем ссылку.
.
3. Очищаем HTML низ, оставляя кнопку с баннерами, счетчики и картинку-Логотип,
В Самое Начало HTML низ Прописываем Такой Скрипт:
<!-- //ПОДГРУЗКА КОНТЕНТА HTML низ/ -->
<script>tstAndLoad()</script>
.
4. В Самое Начало HTML верх прописываем такой Скрипт:
<script> //СКРИПТ ПОДГРУЗКИ КОНТЕНТА HTML низ//
//Тут в кавычках Прописываем Ссылку на подгружаемый файл(контента HTML низ)
var Link='http://forumstatic.ru/files/000c/c1/da/59566.css';function getXmlHttp(){var xmlhttp;try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")}catch(E){xmlhttp=false}}if(!xmlhttp&&typeof XMLHttpRequest!='undefined'){xmlhttp=new XMLHttpRequest()}return xmlhttp}
var HTML_NIZ;function tstAndLoad(){if($("#Myloa").html()==null){var Lft='</';$("#html-footer").prepend('<script>document.write(HTML_NIZ)'+Lft+'script>');}};var xmlhttp=getXmlHttp();xmlhttp.open('GET',Link,true);xmlhttp.onreadystatechange=function(){if(xmlhttp.readyState==4){if(xmlhttp.status==200){HTML_NIZ='<span id=Myloa></span>'+xmlhttp.responseText;if($("#html-footer").html()!=null){$("#html-footer").prepend(HTML_NIZ)}}}};xmlhttp.send(null);
</script>
Ссылку красным заменяeм на Свою
.
Ускорил
25.10.11 Поправил трабл с css
.
Тестируем - Отписываемся
Еще раз подчеркиваю Не включать в подгружаемый контент Счетчики и различные фреймы
Отредактировано Deff (Вс, 18 Мар 2012 13:16:00)