 
			
				26.07.2013, 08:40
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.06.2013 
					
					
					
						Сообщений: 135
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Как заставить fancybox вспывать не по клику а по событию onload ???
			 
			
		
		
		
		Модальное окно fancybox с iframe контентом внутри (под iframe я подразумеваю что в модальном окне будет группа подписчиков вконтакте) должно всплывать через заданный промежуток времени и независимо хоть перезапустили браузер или выключили компьютер все равно должен в куках запомнить когда его первый раз запустили и отсчитывать например 15сек или 24 часа. По умолчанию это модальное окно fancybox с iframe контентом внутри (чтобы был именно iframe кон-т в модальном окне нужно давать класс iframe ссылке <a class="iframe" href="http://www.example">This goes to iframe</a>) только оно всплывает по клику и еще нужно привязывать к ссылке, а мне нужно чтобы модальное окно всплывало самостоятельно не опираясь ни на какую ссылку с каким нибуть там классом. Таким образом я хочу подталкивать посетителей ненавязчиво подписаться в группу сайта вконтакте. 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 09:04
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.08.2011 
					
					
					
						Сообщений: 420
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
var date = new Date();
if( ! $.cookie('fancybox_show')  ){
// запускаем fancybox
$.cookie('fancybox_show', date.getTime(),{ path: "/", expires: 1}); // кука будет жить 24 часа
// date.getTime() - не обязательно даже, просто на всякий знать когда был запущен последний раз
}
 
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось ОлегА, 26.07.2013 в 09:06.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 09:10
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 11.09.2010 
					
					
					
						Сообщений: 8,804
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Смотри на сайте fancybox'а API. Там что-то вроде  
$.fancybox.open(null, {url: '//vk.com'});
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 09:47
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.06.2013 
					
					
					
						Сообщений: 135
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от ОлегА
			 
		
	 | 
 
	
		
var date = new Date();
if( ! $.cookie('fancybox_show')  ){
// запускаем fancybox
$.cookie('fancybox_show', date.getTime(),{ path: "/", expires: 1}); // кука будет жить 24 часа
// date.getTime() - не обязательно даже, просто на всякий знать когда был запущен последний раз
}
	 | 
 
	
 
 ОлегА я создам страницу там в какой нибуть папке, если чтобы модальное окно всплывало по клику с фреймом внутри то нужно было создавать ссылку с классом iframe  иии в href указывать путь к созданной странице html в которой сгенерированный скрипт виджета группы вконтакте, а теперь в вашем коде где прописывать путь к странице с контентом для вывода в модальном окне??? ведь ссылка же теперь ненужна, и еще как в вашем коде менять промежуток с 24 часов жизни куки на 15сек и чтобы после перезапуска браузера сохранялся отсчет времени после первого захода на сайт ???  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 10:11
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.08.2011 
					
					
					
						Сообщений: 420
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		1. // запускаем fancybox - пишете вместо этого ваш скрипт с запуском fancybox я писать его вместо вас не буду 
2.  
	
 
	| 
		
			Сообщение от ilyas->
			
		
	 | 
 
	| 
		и еще как в вашем коде менять промежуток с 24 часов жизни куки на 15сек
	 | 
 
	
 
 
var sec = 15;
date.setTime(date.getTime() + (sec  * 1000));
$.cookie('fancybox_show', date.getTime(),{ path: "/", expires: date});
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 10:32
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.06.2013 
					
					
					
						Сообщений: 135
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от ОлегА
			 
		
	 | 
 
	
		1. // запускаем fancybox - пишете вместо этого ваш скрипт с запуском fancybox я писать его вместо вас не буду 
 
2.  
var sec = 15;
date.setTime(date.getTime() + (sec  * 1000));
$.cookie('fancybox_show', date.getTime(),{ path: "/", expires: date});
	 | 
 
	
 
 У меня такой еще вопрос если у меня уже используется одно модальное окно но оно запускается с клика по ссылке а вот это уже вторым будет, не будет ли так что оба сразу или по очереди запустятся??? тот что по клику должен запускаться только с клика  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 10:47
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.06.2013 
					
					
					
						Сообщений: 135
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
var date = new Date();
if( ! $.cookie('fancybox_show')  ){
// запускаем fancybox
var sec = 5;
date.setTime(date.getTime() + (sec  * 1000));
$.cookie('fancybox_show', date.getTime(),{ path: "/personal/carts/content.html", expires: date});
}
вставил вот такую запись в body, что то модальное окно не всплыло через 5сек
 
и после вставки такой записи 
 
var date = new Date();
if( ! $.cookie('fancybox_show')  ){
// запускаем fancybox
$.cookie('fancybox_show', date.getTime(),{ path: "/personal/carts/content.html", expires: 1}); // кука будет жить 24 часа
// date.getTime() - не обязательно даже, просто на всякий знать когда был запущен последний раз
}
тоже после первого обновления страницы не всплывает модальное окно ???  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось ilyas->, 26.07.2013 в 10:51.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 11:06
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.06.2013 
					
					
					
						Сообщений: 135
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		модальное окно которое работает по клику у меня вот инициализируется 
$(document).ready(function() {
$("a.gallery, a.iframe").fancybox();
$("a.modalbox").fancybox(
{ 
"frameWidth" : 500, 
"frameHeight" : 500 
});
$("a.gallery2").fancybox(
{ 
"padding" : 0, // отступ контента от краев окна
"imageScale" : false, // Принимает значение true - контент(изображения) масштабируется по размеру окна, или false - окно вытягивается по размеру контента. По умолчанию - TRUE
"zoomOpacity" : false,	// изменение прозрачности контента во время анимации (по умолчанию false)
"zoomSpeedIn" : 1000,	// скорость анимации в мс при увеличении фото (по умолчанию 0)
"zoomSpeedOut" : 1000,	// скорость анимации в мс при уменьшении фото (по умолчанию 0)
"zoomSpeedChange" : 1000, // скорость анимации в мс при смене фото (по умолчанию 0)
"frameWidth" : 500,	 // ширина окна, px (425px - по умолчанию)
"frameHeight" : 500, // высота окна, px(355px - по умолчанию)
"overlayShow" : true, // если true затеняят страницу под всплывающим окном. (по умолчанию true). Цвет задается в jquery.fancybox.css - div#fancy_overlay 
"overlayOpacity" : 0.5,	 // Прозрачность затенения 	(0.3 по умолчанию)
"hideOnContentClick" :false, // Если TRUE  закрывает окно по клику по любой его точке (кроме элементов навигации). Поумолчанию TRUE 
"centerOnScroll" : false // Если TRUE окно центрируется на экране, когда пользователь прокручивает страницу 
}); 
$("#menu a, .anim").hover( function() {
$(this).animate({"paddingLeft" : "10px"}, 300)},
function() {$(this).animate({"paddingLeft" : "0"}, 300);
});
$("a.iframe").fancybox(
{ 
"frameWidth" : 420,	 // ширина окна, px (425px - по умолчанию)
"frameHeight" : 420 // высота окна, px(355px - по умолчанию) 
});
});
значит дублирую этот код и куда там ваш нужно вставлять???  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 11:45
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.08.2011 
					
					
					
						Сообщений: 420
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
var date = new Date();
var mSec = 5*1000;
function show_fancybox(){
  if( ! $.cookie('fancybox_show')  ){
    // запускаем fancybox
   
   date.setTime(date.getTime() +mSec);
   
   $.cookie('fancybox_show', date.getTime(),{ path: "/personal/carts/content.html", expires: date});
  }
}
$(function(){
   show_fancybox()
   setInterval(show_fancybox, mSec)
})
 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.07.2013, 11:45
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 11.09.2010 
					
					
					
						Сообщений: 8,804
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Ку-ку, ёпта! Открывай либо через API либо триггери клик по отфэнсибоксенному элементу через .click() 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |