Как сделать цикл на одноразовую загрузку preloader?

В просторах интернета нашёл интересный индикатор-загрузки (loader). Всё отлично, работает. Но этот скрипт срабатывает каждый раз, когда я возвращаюсь на страницу(где и собсна находиться скрипт). Можно ли сделать так, чтоб индикатор загружался 1 раз за всё время ? (например пока вкладку не закроем)
// Hide loading overlay <div /> (with spinner) after page complete loading. After hiding,
//   <div /> will be removed, and for <body> removed css class 'noscroll'
var _loading_spinner=setInterval(function(){if(document.readyState=='complete'){
  var $page_loading = document.getElementById('page_loading'),
      $body = document.body || document.getElementsByTagName('body')[0],
      speed = 2500, delay = 2500;
  if((typeof $page_loading != 'undefined') && ($page_loading != null)){
    setTimeout(function(){
      var transition = 'opacity ' + speed.toString() + 'ms ease',
          removeCssClass = function(obj, className){
            obj.className = obj.className.replace(className, '').replace('  ', ' ');
          };
      ['-webkit-transition','-moz-transition','transition'].forEach(function(prefix){
        $page_loading.style[prefix] = transition;
      });
      $page_loading.style['opacity'] = '0';
      $page_loading.style['filter']  = 'alpha(opacity=0)';
      removeCssClass($body, 'noscroll');
      setTimeout(function(){
        $page_loading.parentNode.removeChild($page_loading);
      }, speed + 10);
    }, delay);
  }
  clearInterval(_loading_spinner);
}},10);
  • Вопрос задан
  • 209 просмотров
Пригласить эксперта
Ответы на вопрос 1
Можно воспользоваться cookie.

if (!$.cookie('preloader')) {
  // Если нет cookie preloader, выполнятся код, который размещаем здесь.

  // создаем cookie. В следующий раз код выше не сработает.
  $.cookie('preloader', true, {path: '/', expire: 100});
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы