نمایش پاپ آپ با استفاده از کوکی ها و جاوا اسکریپت
نمایش پاپ آپ با استفاده از کوکی ها و جاوا اسکریپت
برای نمایش پاپ آپ ها روش های مختلفی وجود دارد مثلا استفاده از session ها که این مورد نیاز به برقراری ارتباط با سرور از طریق ایجکس دارد. روش دیگر استفاده از کوکی ها برای نمایش تعداد دفعات پاپ آپ در هر ساعت شبانه روز(یعنی در هر ساعت فقط یک بار برای هر کاربر پاپ آپ را نمایش داد شود) می باشد.
ابتدا کد زیر را در بین تگ head قرار دهید
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 setCookie(c_name, value) { var exdays = 1; var exdate = new Date(); exdate.setHours(exdate.getHours() + exdays); var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString()); document.cookie = c_name + "=" + c_value; } function checkCookie() { var username1 = getCookie("tiptap"); var usernam = "tiptap"; if (username1 == null) { window.open('', '_parent', 'toolbar=1,location=1,directories=1,status=1,menubar=1,scrollbars=1,resizable=1'); window.focus(); } if (username1 == "" | username1 == null) { if (window.open('http://iranganj.com', '_blank', 'toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1')) { window.focus(); setCookie("tiptap", usernam); } } } document.onclick = checkCookie; if ((window.XMLHttpRequest == undefined) && (ActiveXObject != undefined)) { window.onload = checkCookie; }
این پاپ آپ زمانی که کاربر روی هر المانی از صفحه کلیک کرده باشد اجرا می شود. بعد اجرای ابتدا یک کوکی در مروگر کاربر ایجاد شده و مدت انقضای این کوکی یک ساعت می باشد و امکان افزایش این مدت زمان نیز وجود دارد یعنی فقط هر یک ساعت پاپ آپ فوق در مرورگر کاربر اجرا خواهد شد.
برای افزایش مدت زمان کوکی کافیست exdays به هر مقداری که مد نظر دارید افزایش دهید. و در قسمت window.open می توانید تنظیمات صفحه پاپ آپ را مشخص کنید.
نظر / سوال