jQuery blockUI только при загрузке первой страницы

Я использую этот фрагмент для blockUI (плагин jQuery), чтобы отображать текст «blahblah» в течение 15 секунд, затем он автоматически исчезает и разблокирует страницу.

 <script>
 jQuery(document).ready(function() { 

         jQuery.blockUI({ 
             message: 'Blah blahblah', 
             timeout: 15000 
         }); 
 }); 
 </script>

Есть ли способ отобразить это только при загрузке первой страницы, а не на каждой странице сайта?

Заранее спасибо! :)


person MultiformeIngegno    schedule 17.11.2012    source источник


Ответы (1)


Вы не указываете, хотите ли вы запустить blockUI:

  1. Только один раз при первом посещении сайта пользователем. Если это так, проверьте, установлен ли файл cookie перед запуском кода blockUI, а затем установите его после запуска кода. См. Создайте файл cookie, если (и только если) он еще не существует. .
  2. Только один раз каждый раз, когда пользователь посещает определенную страницу на сайте. Если это так, просто установите и проверьте файл cookie на этой странице. В противном случае используйте div (например, homediv), специфичный для этой страницы, и поместите код в функцию загрузки для этого: $('#homediv').load(function () { //put the logic above here });

Изменить

Если оно первое, и вы хотите показывать сообщение только раз в неделю посетителям сайта, то попробуйте следующее:

jQuery(document).ready(function() {
  if($.cookie('firstvisit') == null) { 
     jQuery.blockUI({
         message: 'Blah blahblah',
         timeout: 15000
     });
     $.cookie('firstvisit', '0', {expires:7, path:'/'});
  }
});

Измените 7 на количество дней, которые должны пройти, прежде чем вы захотите снова отобразить сообщение.

person mccannf    schedule 17.11.2012
comment
Я ищу первый вариант. :) Итак, что-то вроде этого сработает? pastebin.com/gZqa9ZdK (сначала установите для файла cookie значение 1, если он отсутствует, затем запустите функцию, если файл cookie 1 подарок).. - person MultiformeIngegno; 18.11.2012
comment
Отредактировано с примером: проверьте, не посетил ли уже кто-то. Если нет, запустите blockUI, а затем установите файл cookie, чтобы при повторном посещении страницы он не запускался. - person mccannf; 18.11.2012