JavaScript下载器

时间:2012-03-12 14:42:26

标签: javascript download

我想允许网站用户能够从我的网站下载文件,但在客户端下载程序的帮助下,能够继续中断下载。

例如,我想向一个人发送一个大小超过30兆的文件。我希望用户拥有最佳的下载体验,因此我无法让他下载25 Meg,然后由于他身边的网络问题而导致下载失败。

因此,我希望在下载页面上呈现一个javascript下载程序,它将显示实际的客户端文件传递,以及何时下载,以便用户能够保存文件。

或者由于javascript无法打开保存文件对话框并保存到文件系统这是不可能的?

2 个答案:

答案 0 :(得分:3)

我担心使用JavaScript是不可能的,这就是原因:

要从特定点继续下载,您应该向服务器发送开始下载的位置编号。由于JavaScript无法访问本地文件系统,因此无法获得该位置。

UPD :似乎我太匆忙回复了。 可以使用HTML5 File API获取文件大小,在获取文件大小后,您可以将其传递给应支持部分下载的服务器。

但无论如何,在下载文件的另一部分后,你应该以某种方式缝合两件;标准Web浏览器对话框仅建议覆盖该文件。

UPD2 :要使用某些Internet Explorers中的文件,您可以使用FileSystemObject:

var fso;
fso = new ActiveXObject("Scripting.FileSystemObject");

答案 1 :(得分:0)

我会考虑制作一个插件或扩展程序。就像firefox和Google Chrome的DownloadThemAll扩展一样。另一种选择是使用Flash,无论是单独使用还是将其与javascript集成在一起,如下所示:http://www.communitymx.com/content/article.cfm?cid=0922A