Javascript 在Safari中启动文件blob的下载

Javascript 在Safari中启动文件blob的下载,javascript,safari,Javascript,Safari,让我先说一句,我在这里看到了许多类似的问题,但没有一个与此相同的场景提供了有效的解决方案 我通过javascript从画布元素生成PDF。说到底,我将PDF保存在一个变量中,作为“application/PDF”类型的原始编码blob。在每个主要浏览器(Internet Explorer、Mozilla Firefox、Google Chrome)中,以下代码片段足以启动下载: saveAs(blob, 'filename.pdf'); 然而,Safari什么都不做。我尝试使用FileRead

让我先说一句,我在这里看到了许多类似的问题,但没有一个与此相同的场景提供了有效的解决方案

我通过javascript从画布元素生成PDF。说到底,我将PDF保存在一个变量中,作为“application/PDF”类型的原始编码blob。在每个主要浏览器(Internet Explorer、Mozilla Firefox、Google Chrome)中,以下代码片段足以启动下载:

saveAs(blob, 'filename.pdf');
然而,Safari什么都不做。我尝试使用FileReader的readAsDataURL方法以及URL.createObjectURL和webkit供应商特定的api,然后使用window.open()打开一个新的选项卡/窗口,并将其作为内容

我正在寻找任何解决方案,使我能够直接为我的Safari用户启动此下载,而不必首先将数据传递到服务器。

可能的副本