Не используйте window.open
, просто заставьте браузер делать то, что он уже знает, как делать с HTML: создайте привязку ссылки, затем щелкните по ней.
// create an temporary, invisible link and open it in a new tab
function openURL(url) {
var a = document.createElement("a");
a.setAttribute("target", "_blank");
a.href = url;
a.style.display = "none";
// you can't click a link unless it's part of the document:
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
Таким образом, вы говорите браузеру просто «открыть ссылку обычным способом», и он с радостью сделает это вместо того, чтобы блокировать сомнительные API, которые имеют историю использования для всплывающих окон и других сомнительных целей.