解决谷歌浏览器使用 window.open()和document.write(),单击右键“图片另存为...”不起作用

点击图片地址,使用window.open()和document.write()打开新窗口,实现图片预览,单击右键进行保存

const imgWindow = window.open('')
imgWindow && imgWindow.document.write(``)

结果发现,在部分谷歌浏览器中,新窗口打开后无法实现单击右键进行图片保存。而选“在新标签页中打开图片”却可以。为什么会这样?
解决谷歌浏览器使用 window.open()和document.write(),单击右键“图片另存为...”不起作用_第1张图片

在网上搜索一番,网友说是谷歌内核的原因导致,给出解决方案 xxx.document.location = "#"
https://qa.1r1g.com/sf/ask/28...

const imgWindow = window.open('')
imgWindow && imgWindow.document.write(``)
imgWindow.document.location = "#";

解决谷歌浏览器使用 window.open()和document.write(),单击右键“图片另存为...”不起作用_第2张图片

问题解决了,但是具体是啥原因,还不清楚,而且不知道为啥要用 document.location并且设置为 #,才会起作用,希望大佬看到后解个惑

你可能感兴趣的:(解决谷歌浏览器使用 window.open()和document.write(),单击右键“图片另存为...”不起作用)