![]() |
Нужно ускорить загрузку странички :)
Есть такая проблема, при загрузке странички браузер долго думает прежде чем подгрузить баннеры, а потом загружает все содержимое странички вместе с баннерами (табличками сделан сайтец). Так вот мона как-нить вначале подгрузить содержимое странички, оставив в нужных местах места под баннеры, а только после полной загрузки инфы подгрузить уже и баннеры?
|
Vampire
с помощью js-скриптов, например; все картанки баннеров обозначаете какими-то именами (b1, b2, b3...), но не пишите им src, и делаете их невидимыми (visibility: hidden); потом специальной функцией пробегаетесь по массиву этих баннеров, созданному вначале программы, и добавляете им какой-нибудь src, при этом убирая невидимость... и конечно, функция должна вызываться через <body onload="">. |
Ну а если это не просто картинки, а коды баннерных сетей (которые вроде как редактировать запрещается)? т.е. мне надо оставить при загрузке странички в определенных местах пустые места, а потом туда подгрузить сам код баннера
|
Vampire
почти так же как и с картинками, только создаем не img, а div или span без содержания, и во время обхода добавляем obj.innerHTML= код_баннера |
Vampire
Браузеры (не знаю все ли) загружают по таблицам, то есть браузер пробегается по коду, если находит начало таблицы, то читает всю эту таблицу до конца и потом её грузит, поэтому имеет смысл таблицы с баннерами напечатать в коде настолько низко, насколько это возможно. И не делать весь сайт в одной таблице, тогда пока всё в данной таблице не загрузится, то содержимое не отобразиться |
Vampire
<script defer> </script> и ваш скрипт будет работать только после загрузки нескриптовой части сайта |
Посчет таблиц это я знаю, но дизайн менять уже не хочется, а вот посчет <script defer></script> мона поподробнее? как оно работает и каков синтаксис?
elfoflorien а можешь простенький примерчик привести? ЗЫ: баннеры от TBN, у них там три строчки с <script>...</script>, насколько я понимаю скрипты друг в друга вкладывать нельзя, а может и ошибаюсь (это я про применение <script defer></script>). Поправте, если неправ. |
Vampire
правда не уверен, что работает - не проверял HTML код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
да зачем все это??
везде в тег script добавляйте атрибут defer и эти скрипты будут грузится после onload body |
Vampire
В данном случае поможет определение размеров, чтобы браузер однозначно знал, где какой элемент должен располагаться, либо избавляться от таблиц и переходить на <div>. Иногда нужно выполнение скриптов до загрузки страницы, ла и во всех ли браузерах это работает? |
Цитата:
|
Ладно, скажу по другому. Выполение жабаскрипт не тормозит отображение страницы (если это не вражеский скрипт, который чего то ждет), просто IE не отображает ссодержимое страницы, пока не будет иметь однозначное представление как ее рендерить, движок такой.
Лисица и Опера умеют отображать страницу сразу, во время загрузки, подгоняя ее походу. |
archy а как заставить ие не ждать просчета явы? Да и по статистике большинство народу используют ИЕ.
|
Vampire
епт, ТАК, КАК Я НАПИСАЛ! ))) |
А нифига неполучается. Ты хоть видел скрипт от ТВН. Вот тебе пример
HTML код:
<script language="JavaScript"> var loc = ''; </script> |
ИЕ не ждет просчета жабаскрипта, оно ждет загрузки img/iframe для дальнейшего правильного рендеринга страницы. Заставить осла этого не делать... не знаю таких возможностей.
Хотя может я и отстал, грят 7ой осел довольно выкрутастый :) |
Vampire
если вы используете PHP в своих страницах, можно использовать функции буфера вывода (ob_start(), ob_get_contents(), flush(), ob_end_clear()), можеть быть что-то ускорится... Да и PHP лучше оптимизировать - например, убирать из операторов echo и print максимум статической информации: вместо PHP код:
HTML код:
?> <img src="<? echo $img_src ?>" ...> |
Vampire
давайте начнем сначала с определенея что за баннеры... это баннеры грузятся с вашего сайта или это внешние баннерные сети? |
Банерная сеть ТВН, примерный код баннера приведен в моем сообщении чуть выше
|
Время: 23:12. |
Время: 23:12.
© OSzone.net 2001-