Как создать и открыть в новой вкладке html страницу с помощью js?

Я хотел бы создать новую страницу на js при клике, и открыть ее в новой вкладке, как можно такое сделать?


Ответы (1 шт):

Автор решения: vsemozhebuty

Если вам нужно создать страницу с нуля на лету, можете попробовать так, хотя это будет странно и неожиданно для пользователя (и может быть блокировано настройками или средствами борьбы с всплывающими окнами):

const html = `
  <head><meta charset='UTF-8'><title>Test</title></head>
  <body>
    <p>Text.</p>
  </body>`;

window.open('about:blank').document.documentElement.innerHTML = html;

Раньше можно было использовать Data URLs, но теперь браузеры запрещают навигацию верхнего уровня по таким адресам из скриптов.

→ Ссылка