• 05-08-2022, 13:39:54
    #1
    aşağıdaki pop up kodunun her kişi için 2 saatte bir çalışmasını istiyorum bunu nasıl yapabilirim

    var degisken = ['site1-','site2']; var rand = degisken[Math.floor(Math.random() * degisken.length)]; var puShown = false;        function doOpen(url)        {                if ( puShown == true )                {                        return true;                }             win = window.open(url,"yenipencere","menubar=0,resizable=1,width=1,height=1");             win.moveTo(150000, 150000);                 if ( win )                {                        win.blur();                        puShown = true;                }                return win;        }        function setCookie(name, value, time)        {            var expires = new Date();            expires.setTime( expires.getTime() + time );            document.cookie = name + '=' + value + '; expires=' + expires.toGMTString();        }       function getCookie(name) { var cookies = document.cookie.toString().split('; '); var cookie, c_name, c_value; // eğer n=0; i 0 yaparsanız popup cookie yönetimine bağlanır ve // sadece 1 kez açılır. n=1; kaldığı sürece popup sürekli açılacaktır. for (var n=0; n<cookies.length; n++) { cookie = cookies[n].split('='); c_name = cookie[0]; c_value = cookie[0]; if ( c_name == name ) { return c_value;                 }            }            return null;        }        function initPu()        {                if ( document.attachEvent )                {                        document.attachEvent( 'onclick', checkTarget );                }                else if ( document.addEventListener )                {                        document.addEventListener( 'click', checkTarget, false );                }        }        function checkTarget(e)        {            if ( !getCookie('popundr') ) {                var e = e || window.event;                var win = doOpen(rand);                setCookie('popundr', 1, 1*60*60*1000);            }        } initPu();
  • 05-08-2022, 13:47:22
    #2
    kullanıcı popup'ı kapadığında localStorage üzerinde kapattığı andaki saati tut. şimdiki zaman ile localStorage üzerinde ki zaman 2 saati geçerse popup'ı yeniden aç
  • 05-08-2022, 16:27:12
    #3
          let lastTrigger = localStorage.getItem("lastTriggerTime");
          let timeBetweenTriggers = 1000 * 60 * 60 * 2;
          let now = new Date().getTime();
          if (lastTrigger == null || now - lastTrigger > timeBetweenTriggers) {
             localStorage.setItem("lastTriggerTime", now);
             //popup göster
          }
    Popup göster yazdığım yerde bir fonksiyon aracılığıyla veya direkt kendi kodunuzu orada çalıştırarak yapabilirsiniz. Ayrıca timeBetweenTriggers ile de zamanı ayarlayabilirsiniz şuanda 2 saate ayarlı.