Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.09.2009, 14:06
Новичок на форуме
Отправить личное сообщение для Дмитрий_online Посмотреть профиль Найти все сообщения от Дмитрий_online
 
Регистрация: 07.09.2009
Сообщений: 7

Как отложить загрузку javascript-баннера
Имеется следующая проблема. Джаваскриптовый баннер частенько тормозит загрузку страницы. Как сделать так, чтобы он подгружался после отрисовки страницы?

Пользуюсь таким способом:

// В место, где баннер должен показываться
<div id="adv_place_1"></div>


// В место, когда можно начинать подгузку баннера
<div id="adv_block_1"><script language="javascript">Код баннер</script></div>


// Собственно делаем подстановку
<script type="text/javascript">document.getElementById('adv_place_1').appendChild(document.getElementById('adv_block_1'));</script>


Почему-то данный способ у меня конфликтует с ЯндексДиректом. То показываются блоки ЯДа, а баннер не показывается, то - наоборот.

Можно ли как-то по-другому решить задачу или исправить/дополнить этот способ, чтобы он не конфликтовал с ЯДом?
Ответить с цитированием
  #2 (permalink)  
Старый 07.09.2009, 14:08
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

Сообщение от Дмитрий_online
Как сделать так, чтобы он подгружался после отрисовки страницы?
window.onload
Ответить с цитированием
  #3 (permalink)  
Старый 07.09.2009, 14:37
Новичок на форуме
Отправить личное сообщение для Дмитрий_online Посмотреть профиль Найти все сообщения от Дмитрий_online
 
Регистрация: 07.09.2009
Сообщений: 7

B~Vladi, спасибо, что ответили. Но не могли бы пошагово (как я выше) расписать, как все сделать. У меня почему-то не получалось добиться нужного эффекта, используя onload. А то рекламодатель не очень рад моим экспериментам и, особенно, неудачным попыткам...
Ответить с цитированием
  #4 (permalink)  
Старый 07.09.2009, 15:03
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 03.04.2008
Сообщений: 6,234

Вы просите готовый скрипт с нуля.

Это работа, и за нее обычно платят деньги.
Для таких сообщений предназначен раздел форума "Работа".

Если вы все же хотите, чтобы вам помогли - приложите какие-то усилия сами и задавайте вопросы по ходу дела.
Ответить с цитированием
  #5 (permalink)  
Старый 07.09.2009, 15:19
Новичок на форуме
Отправить личное сообщение для Дмитрий_online Посмотреть профиль Найти все сообщения от Дмитрий_online
 
Регистрация: 07.09.2009
Сообщений: 7

Gvozd, я прошу поделиться решением (кусок кода), которое наверняка используется на собственных сайтах, а не писать скрипт с нуля.
Ответить с цитированием
  #6 (permalink)  
Старый 07.09.2009, 15:24
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

А к чему собственно такие эксперементы?! Дали код - вставили куда надо. Зачем его перетыкать-то?!
Ответить с цитированием
  #7 (permalink)  
Старый 07.09.2009, 15:38
Новичок на форуме
Отправить личное сообщение для Дмитрий_online Посмотреть профиль Найти все сообщения от Дмитрий_online
 
Регистрация: 07.09.2009
Сообщений: 7

B~Vladi, не совсем понял вопрос. Но если Вы про код баннера, то он тормозит загрузку всей страницы, пока не загрузится сам.
Ответить с цитированием
  #8 (permalink)  
Старый 07.09.2009, 15:41
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

Сообщение от Дмитрий_online
он тормозит загрузку всей страницы, пока не загрузится сам.
Тогда напишите обработчик, примерно такой:
window.onload=function(){
  document.getElementById('adv_place_1').innerHTML='код вашего баннера';
}
Ответить с цитированием
  #9 (permalink)  
Старый 07.09.2009, 16:44
Новичок на форуме
Отправить личное сообщение для Дмитрий_online Посмотреть профиль Найти все сообщения от Дмитрий_online
 
Регистрация: 07.09.2009
Сообщений: 7

B~Vladi, вставляю в код страницы следующее:

<script type="text/javascript">
      window.onload=function(){
       document.getElementById('adv_place_1').innerHTML='<script language="javascript">AC_FL_RunContent = 0;</script>
               <script src="http://***.ru/AC_RunActiveContent.js" language="javascript"></script>
               <script language="javascript" type="text/javascript" src="http://***.ru/***.js"></script>';
            }
            </script>


В результате:
1. Баннер начинает загружаться, когда до него дошла очерь по коду (window.onload не работает);
2. Баннер не перемещается на нужное место, а вставляется там, где код стоит (после баннера пояляется
Цитата:
'; }
).

Что я делаю не так?
Ответить с цитированием
  #10 (permalink)  
Старый 07.09.2009, 16:59
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

Сообщение от Дмитрий_online
window.onload не работает
Работает
Попробуйте его в хед засунуть и проверьте.
И попробуйте создать скрипты DOM-методами, может так у вас всё ок будет:
var js=document.createElement('script');
js.type='text/javascript';
js.src='http://***.ru/';
document.getElementById('adv_place_1').appendChild(js);

За подробностями - сюда
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как php перменной присвоить значение переменной javascript? php_vasia Элементы интерфейса 4 04.05.2009 13:33
как запустить функцию JavaScript maydep Общие вопросы Javascript 8 26.03.2009 05:17
Как узнать value radio button-a из javascript kaaron Общие вопросы Javascript 1 17.02.2009 12:25
Как из HTML-документа с помощью Javascript получить оглавление каталога? eto_dimka Общие вопросы Javascript 1 04.01.2009 21:18
как сделать гиперсылку на объект javascript??? kos_walker Общие вопросы Javascript 3 30.09.2008 05:58