2011-04-07 39 views
1

我期待確定下載已經開始,最好是使用jQuery。確定下載開始

我正在提供動態創建的下載,需要5-10秒才能創建。我希望使用JavaScript向瀏覽器發送文件正在創建的消息,並在創建完成並開始下載時刪除該消息。

發佈消息很簡單。當用戶點擊鏈接時,我可以做到這一點。我不能找到一種方法來刪除不再需要的消息。

有沒有辦法做到這一點?

+0

也許在這裏使用的東西http://plugins.jquery.com/plugin-tags/progress – mplungjan 2011-04-07 09:15:01

回答

3

你可以通過提供例如的download.php腳本下載?文件= image.jpg的

當有人訪問它和腳本開始發送文件,你可以在數據庫中記錄此。

然後,您的站點可以通過查看數據庫來對另一個腳本進行ajax調用,該腳本通過是否已經開始下載。如果它開始,您可以隱藏該消息,如果不晚於其他通話。

+1

我實現的解決方案就是這樣。我沒有將數據保存到數據庫,而是將下載創建進度保存到會話cookie並通過循環的ajax調用來訪問該信息。 – kingjeffrey 2011-04-14 01:57:41

0

完全不同的方法避免了AJAX投票:

的下載請求的HTTP響應設置,可以定期提供其下載鏈接的網頁上檢查一個cookie。這樣,您只能輪詢瀏覽器的Cookie存儲,而不是您的服務器。