Скрипт для одноразового показа реклама поверх страницы (промо новых блюд)

Тема в разделе "JavaScript", создана пользователем And90, 13 янв 2012.

Модераторы: ZiX
  1. And90

    And90 Создатель

    Регистр.:
    14 янв 2008
    Сообщения:
    37
    Симпатии:
    3
    Здравствуйте, много раз видел на сайтах такую фишку. При посещении главной страницы, например кафе, появляется изображение или флешка (как лайт-бокс) с рекламой чего-нибудь нового с затемненным фоном (фон это весь основной сайт). Кликаем по промо и переходим на страницу с подробностями, и так же снизу промо кнопка "на сайт". Но загвоздка вот в чем, как сделать так, чтобы эта реклама появлялась у посетителя только один раз, а не постоянно при переходе на главную.
     
  2. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    Эта фишка называется модальное окно, в нете есть много различных примеров реализации, а уберечь пользователя от лишних показов достаточно несложно, после первого показа оставить в браузере посетителя куки с отметкой о прочтении, а скрипт отображения модального окна с рекламой запускать только если у пользователя нет такого куки...
     
    And90 нравится это.
  3. And90

    And90 Создатель

    Регистр.:
    14 янв 2008
    Сообщения:
    37
    Симпатии:
    3
    Спасибо, нашел много примеров модальных окон, да это именно то что нужно. Но везде, вообще во всех руководствах модальное окно вызывается по нажатию на ссылку, по другому никак. Не подскажите, как сделать чтобы окно показывалось сразу при посещении главной один раз и сразу же (сразу затемненный фон и кнопка, пройти на сайт). Вот тут есть хороший пример, может по нему что-нибудь подскажите. Был бы очень признателен.
    Перейти по ссылке
     
  4. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    добавьте в тело скрипта, после $(document).ready(function() { строки
    $(window).load(function () { $(".hide").click();});
    $(".hide").fancybox();
    а в теле документа добавляете:
    <a class="hide" href="content.html" style="display:none">Пример вывода контента при загузке окна</a> ну или что-то наподобие этого :)
     
    And90 нравится это.
  5. And90

    And90 Создатель

    Регистр.:
    14 янв 2008
    Сообщения:
    37
    Симпатии:
    3
    Да все работает, спасибо, вы очень помогли.
     
  6. And90

    And90 Создатель

    Регистр.:
    14 янв 2008
    Сообщения:
    37
    Симпатии:
    3
    Я снова по этой же проблеме, все работает, только как заставить сохраняться модальное окно в кеше, чтоб при следующем посещении страницы модальное окно не выводилось.
     
  7. coolparty

    coolparty Постоялец

    Регистр.:
    6 ноя 2006
    Сообщения:
    63
    Симпатии:
    25
    Тебе нужен не кэш а куки (Cookie)

    Код:
     var my_coockie = "нету";
    if (document.cookie) {
      my_coockie= document.cookie;
    } else {
      document.cookie = "Сохранено=" + document.lastModified;
    }
    alert(document.lastModified + " - " + my_coockie);
     
  8. And90

    And90 Создатель

    Регистр.:
    14 янв 2008
    Сообщения:
    37
    Симпатии:
    3
    Прошу прощения за свою тупость и незнание, но помогите :) вставляю скрипт в html через <script> . Вставил код который был написан выше, он все нормально работает, а куда вставлять ваш код? не в отдельный же <script>
    Код:
    $(document).ready(function() { строки
    $(window).load(function () { $(".hide").click();});
    $(".hide").fancybox();
     
  9. d1mka

    d1mka Постоялец

    Регистр.:
    20 мар 2007
    Сообщения:
    92
    Симпатии:
    23
    Помомойму вот так должно выглядеть
    Код:
    var my_coockie = "нету";
    $(document).ready(function() {
    if (document.cookie) {
      my_coockie= document.cookie;
    } else {
      document.cookie = "Сохранено=" + document.lastModified;
      $(window).load(function () { $(".hide").click();});
      $(".hide").fancybox(); 
    
     }
    
    }