2016-08-02 3 views
0

У меня есть изображение прядильника, которое отображается при нажатии кнопки. В событии клика я генерирую токен, и я устанавливаю window.location.href в путь, который создает файл для загрузки. Этот сгенерированный токен отправляется в бэкэнд, и когда файл генерируется и начинается загрузка, этот токен сравнивается с файлом cookie, созданным с помощью jquery cookie, и на основе того же значка, о котором я упоминал.Spinner не работает на Safari

На хроме, когда начнется загрузка, я скрою счетчик. Он работает нормально. Но в Safari, когда я нажимаю кнопку, файл начинает генерироваться, но счетчик отображается на 1,2 секунды раньше начала загрузки. Примечание: процесс генерации составляет 10-15 секунд.

$('body').on('click', '#export-drops', function(e) { 
 
     $.removeCookie('token'); 
 
     spinner.show(); 
 
     e.preventDefault(); 
 
     
 
     var token = new Date().getTime(); 
 
     window.location.href = "{{ request.path }}?export=excel&token=" + token; 
 

 
     timer = window.setInterval(function() { 
 
      var cookieValue = $.cookie('token'); 
 
      if (cookieValue == token) { 
 
       window.clearInterval(timer); 
 
       $.removeCookie('token'); 
 
       spinner.hide(); 
 
      } 
 
     }, 1000); 
 
    });

+0

уронить код спиннера здесь мой друг – madalinivascu

ответ

0

Посмотрите на первый пост @ Mădălin-Ivaşcu

Смежные вопросы