Привет, я использую открывающий fancybox для новых посетителей через 5 секунд. Хотелось бы открыть всплывающее окно не спустя время, а после открытия третьей (например) страницы, которую он посещает. Как я могу это сделать?
Мое решение с тайм-аутом выглядит так:
setTimeout(function () {
$.fancybox({
autoSize: false,
height: 'auto',
minHeight: 300,
width: '50%',
href: '/index/some-page',
type: 'iframe',
afterLoad: function (current) {
current.content.contents().find('.not-interest').click(function (e) {
e.preventDefault();
Cookies.set('not-interest', true, {expires: 14});
$.fancybox.close();
});
current.content.contents().find('.some-form').submit(function () {
var today = new Date();
var date = new Date('Jan 1, 2038');
var oneDay = 24 * 60 * 60 * 1000;
var diffDays = Math.abs((date.getTime() - today.getTime()) / oneDay);
Cookies.set('interest', true, {expires: diffDays});
});
},
beforeClose: function () {
Cookies.set('close', true, {expires: 14});
}
});
}, 5000);
Моя идея состоит в том, чтобы подсчитать посещенные страницы пользователя и сохранить его в куки. Это хороший способ?