2014-10-30 69 views
1

我想刪除我的斑點,一旦他們下載用戶:辦法知道當的ObjectURL已經被下載(撤銷它...)

var url = window.URL.createObjectURL(myBlob);   
var a = document.createElement("a"); 
a.download = 'myFile' + fileExtension; 
a.href = url; 
a.click();//download launched 

/** Here i want to revoke the ObjectURL and delete my Blob, but i dunno when? **/ 

我能做到這一點,而無需使用虛擬計時器?

回答

2

要在訪問blob時簡單地撤消URL,請使用click事件處理程序。

a.onclick = function() { 
    window.URL.revokeObjectURL(url); 
}; 

要檢查的斑點其實一直下載,您需要通過XHR下載它,你可以監視使用progressload事件的下載進度。據我所知,您無法監控JavaScript中的下載進度,以瞭解XHR之外發起的事情。

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Monitoring_progress

相關問題