Я знаю, что якорные элементы имеют атрибут target="_blank"
, который открывает страницы в новом окне.
В последнее время, однако, я видел код по всей моей кодовой базе и в сети, который использует "_blank"
в качестве параметра windowName
window.open
API.
Документы, на которые есть ссылки, на самом деле упоминают "_blank"
:
Для открытия нового окна при каждом вызове window.open()
используйте специальное значение _blank
для strWindowName
.
Однако в кратком тестировании, которое я только что выполнил в IE11 и Chrome74, установка для параметра имени окна window.open
значения "_blank"
на самом деле не вынуждает страницу выделяться в отдельное окно , если не указано несколько особенности окна, такие как:
window.open("https://google.com", "_blank", "width=500");
Это действительно так для окон с пользовательскими именами окон:
window.open("https://google.com", "a"); // opens in a new tab
window.open("https://google.com", "a", "width=500"); // opens in a new window
Кроме того, установка имени на "_blank"
устанавливает имя окна на ""
, что делает открытие окна без параметра имени окна:
const w = window.open("https://google.com", "_blank");
w.name; // ""
Все это, как говорится, есть причина для "_blank"
в качестве параметра имени окна для window.open
, или это должно быть зарезервировано для целевого элемента привязки, и если window.open(url, "_blank")
вызовы должны быть заменены на window.open(url)
Документы устарели?