Показывать jQuery только один раз за сеанс

Таким образом, я использую следующий код, чтобы показать и удалить элемент. Я установил div на видимый на главной странице и скрытый на всех других страницах, поэтому div появляется только на главной странице. Моя проблема в том, что каждый раз, когда я посещаю домашнюю страницу, div будет отображаться. Вместо этого я хотел бы показать div только один раз за сеанс. Я пытался исправить это с помощью cookies, но это не сработало.

$(window).load(function(){
$("#testlay").fadeIn('slow').delay(1000).fadeOut(1600);
});

2 ответа

  1. Вы можете использовать coockie для этого посмотрите на ниже пример надеюсь, что это поможет

    Пожалуйста, найдите эту скрипку для того же

    function createCookie(name,value,days) {
            if (days) {
                var date = new Date();
                date.setTime(date.getTime() + (days*24*60*60*1000));
                var expires = "; expires=" + date.toUTCString();
            }
            else var expires = "";
            document.cookie = name + "=" + value + expires + "; path=/";
        }
    
        function readCookie(name) {
            var nameEQ = name + "=";
            var ca = document.cookie.split(';');
            for(var i=0;i < ca.length;i++) {
                var c = ca[i];
                while (c.charAt(0)==' ') c = c.substring(1,c.length);
                if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
            }
            return null;
        }
    
        function eraseCookie(name) {
            createCookie(name,"",-1);
        }
        //your window load function replace with below
        $(function(){
          if(readCookie('CodefireOnce') == null)
          {
            createCookie('CodefireOnce','true',7);
            $("#testlay").fadeIn('slow').delay(1000).fadeOut(1600);
          }
        });
    
  2. Вы можете использовать localStorage, который был бы более правильным в этом случае IMO.

    $(window).load(function(){
        if(typeof localStorage.testlayHidden != 'undefined') {
            $("#testlay").fadeIn('slow').delay(1000).fadeOut(1600, function() {
                localStorage.testlayHidden = 1; 
            });
        }
    });