JS Cookies, код попап-окна
Есть вот такой рабочий код попап-окна. Подскажите, пожалуйста, как установить значение, чтобы этот код срабатывал один раз в 12 часов. т.е. как я понимаю, куки должны жить 12 часов?
И еще вопрос, если данный код работает на одном сайте и срабатывает параллельно с разными значениями var url = "https://site1.com"; , var url = "https://site2.com"; , var url = "https://site3.com"; и т.д. что-то нужно поменять в коде чтобы он работал корректно и устанавливал свои куки на 12 часов для каждого из "var url" Спасибо! function doMyStuff($) { $(document).ready(function(){ var ran_yet = false; $("a,body,input").click(function() { if (ran_yet) { return; } ran_yet = true; var cookiename = 'nopopsite'; var val = getCookie(cookiename); if (!val) { val = 1; } else { val = parseInt(val); } setCookie(cookiename, val + 1, 1); if (val != 1) { return; } var windowprops = "width=1024,height=768,location=yes,toolbar=yes,menubar=yes,status=yes,scrollbars=yes,resizable=yes,top=1,left=1"; var url = "https://site.com"; var myWin = window.open(url, "", windowprops); myWin.blur(); window.focus(); }); }); } function setCookie(c_name,value,exdays) { var exdate=new Date(); exdate.setDate(exdate.getDate() + exdays); var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); document.cookie=c_name + "=" + c_value; } function getCookie(c_name) { var i,x,y,ARRcookies=document.cookie.split(";"); for (i=0; i < ARRcookies.length; i++) { x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("=")); y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1); x=x.replace(/^\s+|\s+$/g,""); if (x==c_name) { return unescape(y); } } } function check() { if (window.jQuery && jQuery.fn) { var arr = jQuery.fn.jquery.split('.'); if (arr.length >= 2) { //jquery version 1.3 and up if (arr[0] > 1 || (arr[0] == 1 && arr[1] >= 3)) { return true; } } } return false; } if (check()) { doMyStuff(jQuery); } else { var script = document.createElement('script'); script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js'; window.addEventListener('load', function () { document.body.insertBefore(script, document.body.firstChild); var timer = setInterval(function () { if (check()) { clearInterval(timer); document.body.removeChild(script); doMyStuff(jQuery.noConflict(true)); } }, 30); }); } |
Спасибо большое за ответ, Rise!
Цитата:
Наверное я не правильно объяснил изначально, но уверен что этот код будет работать и ставить разные куки для разных "var url" если его модифицировать как-то. Только вопрос в том как и что модифицировать. Наверное как раз имя куки(предположение)? |
Цитата:
Что я сделал, поменял для разного содержимого значение ключа cookiename "var cookiename = 'nopopsite';" на nopopsite1, nopopsite2, nopopsite3 и т.д., но в этом случае окна продолжают открываться словно куки не записываются пользователям. |
Часовой пояс GMT +3, время: 18:30. |