2016-08-02 17 views
0

Ich habe ein Spinner-Bild, auf Knopfdruck gezeigt. In der Click-Ereignis erzeuge ich ein Token und ich richte window.location.href auf einen Pfad, der eine Datei zum Download generiert. Dieses generierte Token wird im Backend gesendet. Wenn die Datei generiert und der Download gestartet wird, wird dieses Token mit einem Cookie verglichen, das mit jquery cookie generiert wurde und auf demselben Token basiert, das ich erwähnt habe.Spinner nicht auf Safari

Auf Chrom, wenn der Download beginnt, ich den Spinner ausblenden. Es funktioniert gut. Aber in Safari, wenn ich auf die Schaltfläche klicke, wird die Datei erzeugt, aber der Drehknopf wird 1,2 Sekunden vor dem Download angezeigt. Hinweis: Der Generierungsprozess dauert 10-15 Sekunden.

$('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

den Spinner Code Drop mein Freund hier – madalinivascu

Antwort

0

Blick auf den ersten post @ madalin-Ivascu

Verwandte Themen