小编ABo*_*Bos的帖子

BLOB URL 在 Safari 中不起作用

我正在使用 D3 生成图形并希望将其导出为图像,该图像在除 Safari 之外的所有浏览器中都可以正常工作。该代码生成一个 D3 SVG,用于 BLOB,用作图像,添加到可以导出的画布中。

var blob = new Blob([source], { type: 'image/svg+xml;charset=utf-8' });
var url = window.URL.createObjectURL(blob);

// Put the svg into an image tag so that the Canvas element can read it in.
var img = d3.select('body').append('img')
 .attr('width', width)
 .attr('height', height)
 .node();

img.onload = function(){
  // Some method which is never called
}
img.src = url;
Run Code Online (Sandbox Code Playgroud)

在 Safari 中,从不触发 onload 函数,图像元素也不显示图像。我记录了 blob 元素和 URL,两者看起来都很好(如果我在 safari 中手动打开 blob URL,它会下载 SVG 代码)。但它不会将其显示为图像,因此我无法导出它。

我注意到的一点是,当我检查 img 元素并在新选项卡中打开 src 时,它会在 …

javascript safari url blob

1
推荐指数
1
解决办法
7563
查看次数

标签 统计

blob ×1

javascript ×1

safari ×1

url ×1