window.open() 在 Chrome 中打开一个空白屏幕



我在Firefox中检查了相同的代码,它运行良好。事实上,这几周前在Chrome中有效,但现在我只是看到一个空白屏幕。

代码如下:

该函数在单击按钮时触发。

function saving() {
var saveURL = canvas.toDataURL(); 
window.open(saveURL, "_blank", "location=0, menubar=0");
}

虽然在Chrome 中不再可能执行此操作,但有一些解决方法,例如打开空白文档并写入其中。

var win = window.open();
win.document.write("<img src='"+canvas.toDataURL()+"'/>");

这是因为Chrome最近的变化:

https://developers.google.com/web/updates/2017/03/chrome-58-deprecations#remove_content-initiated_top_frame_navigations_to_data_urls

出于安全原因,您无法再以这种方式直接打开数据 URL。

相反,请使用@Savoo在另一个答案中提出的解决方法,或者使用下载锚点并通过JavaScript单击它。

相关内容

  • 没有找到相关文章

最新更新