javascript - window.URL.createObjectURL 创建的对象的目标文档是否可以更改?

标签 javascript dom google-chrome-extension blob

我了解 window.URL.createObjectURL 创建的对象的生命周期与文档相关联。有什么方法可以更改目标文档吗?
我正在开发一个 chrome 扩展程序,我面临的问题是创建的 DOMString 对象会尽快失去与我的 Blob 文件的联系用户刷新页面。我想在文档范围之外维护我的 Blob 文件 URL。或许有一种方法可以将它们移到我的后台脚本中?

最佳答案

Is there any way I can change the target document ?

您可以使用结构化克隆算法将 blob 对象本身传递给不同的文档或工作人员。安装 service worker 的生命周期可能比文档更长,这应该允许您将前向 blob 从一个文档传递到 future 的文档。

无法传递 blob URI,因为 blob url 存储 gets cleaned on document unload .

您还可以使用 indexddb to store blobs

关于javascript - window.URL.createObjectURL 创建的对象的目标文档是否可以更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37943504/

相关文章:

javascript - 我想打印数组的最后 'n' 个元素

javascript - iOS 浏览器上的 HTMLScriptElement 属性为空

Java DOM : getElementsByTagNameNS for an element in NO namespace

javascript - 如何在 Chrome 扩展内容脚本中获取错误堆栈跟踪?

python - Selenium |将多个扩展加载到 Selenium 的 ChromeDriver 中,只接收最后定义的

javascript - AJAX 调用的结果,jQuery .append() 不适用于 Laravel 5.4

javascript - 合并 2 个包含 jQuery 数据范围的数组

javascript - 将元素从一个列表复制到另一个

jQuery - 循环所有元素并删除具有特定属性的元素

javascript - `appendChild` 循环中的 `for` 仅替换由 `createElement` 创建的项目