【发布时间】:2012-10-09 14:18:24
【问题描述】:
我正在尝试寻找一种跨浏览器的方式在 HTML5 中本地存储数据。我在 Blob (see MDN) 中生成了一大块数据。现在我想将此 Blob 移动到实际的文件系统并保存在本地。我找到了以下方法来实现这一点;
- 使用
<a download>属性。这目前仅适用于 Chrome。 - 微软在 IE 10 中引入了一个
saveAs函数来实现这一点。 - 在浏览器中打开 Blob URL 并以这种方式保存。
不过,这些似乎都不适用于 Safari。虽然(1)适用于 Chrome,(2)适用于 IE 和(3)适用于 Firefox,但没有人适用于 Safari 6。下载属性尚未实现,当尝试使用 URL 打开 blob 时,Safari 抱怨 URL 以 @ 开头987654325@ 不是有效的 URL。
有一个很好的脚本可以封装 (1) 和 (3),称为 FileSaver.js,但使用最新的 Safari 版本时不起作用。
有没有办法以跨浏览器的方式在本地保存 Blob?
【问题讨论】:
-
我在 Safari 中遇到了同样的问题。并将 FileSaver.js 用于其他浏览器。我知道这个问题,你面临很久了。只想知道,解决了吗?
标签: javascript html safari