Постоянно скрывать Div, когда форма CF7 успешно отправлена, пока кэш или куки не очищены - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть этот скрипт, который вызывает div с интервалом 5, 10 15 секунд, когда вы нажимаете кнопку закрытия

var iteration = 0;
var times = [5,10,15]

var showPopUp = function(time) {
    setTimeout(function() { 
        jQuery('.pop_timer_box').css('display','flex');
    }, time)
}

showPopUp(times[iteration]);

jQuery('body').on('click', '.cclose_pop', function() {
    jQuery('.pop_timer_box').hide();
    iteration +=1;
    if (iteration < <?=$interval_array_count?>) {
      showPopUp(times[iteration])
    }
});

Внутри div находится контактная форма 7, а код ниже скрывает div, когда форма отправлена ​​

document.addEventListener( 'wpcf7mailsent', function( event ) {
    if(event.detail.contactFormId == '10917') {
    jQuery('.pop_timer_box').hide();
    }
}, false ); 

Мой вопрос заключается в том, как сделать так, чтобы при отправке формы и ее успешном выполнении всплывающая форма больше не появлялась, если не очищен кэш, готовка ie или локальное хранилище

1 Ответ

0 голосов
/ 19 февраля 2020

function setCookie(cname,cvalue,exdays) {
  var d = new Date();
  d.setTime(d.getTime() + (exdays*24*60*60*1000));
  var expires = "expires=" + d.toGMTString();
  document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
	}

function getCookie(cname) {
  var name = cname + "=";
  var decodedCookie = decodeURIComponent(document.cookie);
  var ca = decodedCookie.split(';');
  for(var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}
function showNewsletterPopUp(){
	$(window).scroll(function() {
	   if($(window).scrollTop() > 100) {
	    $('.popup').fadeIn(300);	
	   }

	});
	jQuery(function($) {
	    $('.parallax').on('scroll', function() {
	    	if($(".parallax").scrollTop() > 100) {
		    	$('.popup').fadeIn(300);	
			}
	    })
	});
	$('.pop_close').click(function(){
    	$('.popup').addClass('hide_this');
    });   
}
function checkCookie() {
	
	//console.log('hgghhggh');
  var user = getCookie("popup-attribute");

  if(typeof user === "undefined" || user == null || user == ''){
	  console.log('HERE');
      showNewsletterPopUp();
      setCookie("popup-attribute", 'enable', 7);
  }
}
checkCookie();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...