第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

檢測(cè)瀏覽器何時(shí)收到文件下載

檢測(cè)瀏覽器何時(shí)收到文件下載

檢測(cè)瀏覽器何時(shí)收到文件下載我有一個(gè)允許用戶下載動(dòng)態(tài)生成文件的頁(yè)面。這需要很長(zhǎng)時(shí)間來(lái)生成,所以我想顯示一個(gè)“等待”指示器。問(wèn)題是,我不知道如何檢測(cè)瀏覽器何時(shí)收到文件,所以我可以隱藏指示符。我以一種隱藏的形式發(fā)出請(qǐng)求,該請(qǐng)求發(fā)布到服務(wù)器,并針對(duì)隱藏的iframe獲取其結(jié)果。這樣我就不會(huì)用結(jié)果替換整個(gè)瀏覽器窗口了。我在iframe上聽(tīng)一個(gè)“Load”事件,希望它在下載完成后啟動(dòng)。我返回一個(gè)“內(nèi)容處理:附件”頭與文件,這導(dǎo)致瀏覽器顯示“保存”對(duì)話框。但是瀏覽器不會(huì)在iframe中觸發(fā)“Load”事件。我嘗試過(guò)的一種方法是使用多部分響應(yīng)。因此,它將發(fā)送一個(gè)空的HTML文件,以及附加的可下載文件。例如:Content-type: multipart/x-mixed-replace;boundary="abcde"--abcdeContent-type: text/html--abcdeContent-type:  application/vnd.fdfContent-Disposition: attachment; filename=foo.fdf file-content--abcde這在Firefox中是可行的;它接收空的HTML文件,觸發(fā)“Load”事件,然后顯示可下載文件的“Save”對(duì)話框。但是它在IE和Safari上失??;IE觸發(fā)“Load”事件,但不下載文件,Safari下載文件(名稱和內(nèi)容類(lèi)型錯(cuò)誤),并且不觸發(fā)“Load”事件。另一種方法可能是調(diào)用啟動(dòng)文件創(chuàng)建,然后輪詢服務(wù)器直到它準(zhǔn)備就緒,然后下載已經(jīng)創(chuàng)建的文件。但我寧愿避免在服務(wù)器上創(chuàng)建臨時(shí)文件。有人有更好的主意嗎?
查看完整描述

4 回答

?
桃花長(zhǎng)相依

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超8個(gè)贊

我使用以下方法下載BLOB并在下載后撤銷(xiāo)對(duì)象-url。它工作在鉻和火狐!

function download(blob){
    var url = URL.createObjectURL(blob);
    console.log('create ' + url);

    window.addEventListener('focus', window_focus, false);
    function window_focus(){
        window.removeEventListener('focus', window_focus, false);                   
        URL.revokeObjectURL(url);
        console.log('revoke ' + url);
    }
    location.href = url;}

文件下載對(duì)話框關(guān)閉后,窗口將恢復(fù)她的焦點(diǎn),從而觸發(fā)Focus事件。


查看完整回答
反對(duì) 回復(fù) 2019-05-30
?
慕標(biāo)5832272

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊

一個(gè)非常簡(jiǎn)單的(和跛腳)一行解決方案是使用window.onblur()事件以關(guān)閉加載對(duì)話框。當(dāng)然,如果時(shí)間太長(zhǎng),用戶決定做其他事情(比如閱讀電子郵件),加載對(duì)話框就會(huì)關(guān)閉。


查看完整回答
反對(duì) 回復(fù) 2019-05-30
  • 4 回答
  • 0 關(guān)注
  • 684 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)