Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Выставить задержку ??? (https://javascript.ru/forum/dom-window/40631-vystavit-zaderzhku.html)

ruslan_mart 15.08.2013 17:07

ilyas->, пора уже взяться за учебник, а не ежедневно задаваться простыми вопросами. ;)

ilyas-> 24.08.2013 20:03

Цитата:

Сообщение от Kvark (Сообщение 267479)
я пока еще не спец, но попробуйте так:
функции выдвиньте из .ready, тогда
$(document).ready(function()
{
		fancybox_show();
		setInterval(show_fancybox, 1000);
});

тоесть первой пусть стартует та функция которая у вас занимаеться подготовкой, а потом уже та что проверяет условие (будет выполняться каждую сек.) ну а там уж как сработает ваше условие в момент проверки - вызывайте показ окна или чего там у вас



выложил для наглядности,
<link rel="stylesheet" href="http://ilyas.host-yes.ru/bitrix/fancybox2/jquery.fancybox.css" type="text/css" media="screen" />
<script src="http://ilyas.host-yes.ru/bitrix/fancybox2/jquery.fancybox.js" type="text/javascript"></script>
<script src="http://ilyas.host-yes.ru/bitrix/fancybox2/jquery.cookie.js" type="text/javascript"></script>
<script>
$(document).ready(function(){

function fancybox_show()
{

$(function () {
    $.fancybox.open([
        {
            type: 'iframe',
            href : 'http://ilyas.host-yes.ru/bitrix/vk.html'              
           // 
		  
        }
    ], {
        padding : 0,
		autoSize: false,
        autoDimensions: false,
        width: 416,
        height: 416,
        fitToView: false,
        margin: 0,
		helpers : {
        overlay : {
            locked : false
        }}
    });
});

}
var date = new Date();
var mSec = 20*1000;

function show_fancybox(){

  if($.cookie('fancybox_show')){}else{
    // запускаем fancybox
fancybox_show();
       
   date.setTime(date.getTime()+mSec);
   
   $.cookie('fancybox_show', date.getTime(),{ path: "/", expires: date});
  }
}



});



$(document).ready(function()
{
		fancybox_show();
		setInterval(show_fancybox, 1000);
});

</script>


если выдвигаю как говорите из .ready и вставляю ваш код то вообще ничего не работает ссылка выберете onLoad чтобы модальное окошко выскачило

ilyas-> 26.08.2013 19:24

Да и еще помогите прикрутить ротацию виджет href : 'http://ilyas.host-yes.ru/bitrix/vk.html', пока виджет только от вконтаке еще хотелось однокласники фэйсбук, и их каждый день по очереди показывать

ilyas-> 29.08.2013 18:16

если я вопрос непонятно задал, дайте мне знать

JustCrazy 29.08.2013 19:29

вот этот участок кода у вас отвечает за запуск модального окна, когда документ загрузился и каждые 5 секунд мониторит куки,
$(function(){
   show_fancybox();
   setInterval(show_fancybox, 5000);
})

чтобы скрипт стартовал через минуту после запуска страницы:
$(function(){
   setTimeout(function(){ 
     show_fancybox();
     setInterval(show_fancybox, 5000); 
  },60000);
})

ilyas-> 30.08.2013 16:49

Цитата:

Сообщение от JustCrazy (Сообщение 269938)
вот этот участок кода у вас отвечает за запуск модального окна, когда документ загрузился и каждые 5 секунд мониторит куки,
$(function(){
   show_fancybox();
   setInterval(show_fancybox, 5000);
})

чтобы скрипт стартовал через минуту после запуска страницы:
$(function(){
   setTimeout(function(){ 
     show_fancybox();
     setInterval(show_fancybox, 5000); 
  },60000);
})

Спасибо за ответ, а вот еще я задавал вопрос как можно будет менять href, по истечении жизни куки при новом старте кук загружать виджет от однокласников а уже в следующий раз загружать vk ? Получается эдакая ротация виджетов по href

ilyas-> 01.09.2013 21:13

Цитата:

Сообщение от JustCrazy (Сообщение 269938)
вот этот участок кода у вас отвечает за запуск модального окна, когда документ загрузился и каждые 5 секунд мониторит куки,
$(function(){
   show_fancybox();
   setInterval(show_fancybox, 5000);
})

чтобы скрипт стартовал через минуту после запуска страницы:
$(function(){
   setTimeout(function(){ 
     show_fancybox();
     setInterval(show_fancybox, 5000); 
  },60000);
})


Если страницу перезагрузить то таймер опять отсчитает минуту и поновой запустит скрипт даже не обращая на существующую куку, пока не создаст куку будет 2 раза в течениии 10 сек перезагружать виджет пока не создаст куку, похоже кука перетирается, ведь после того как пользователь откроет страницу он же не будет сидеть минуту на главной странице и ждать пока модальное окно всплывет, он пойдет по сайту и в получится что каждый раз таймер будет запускаться по новой


Часовой пояс GMT +3, время: 13:03.