Я пытаюсь открыть обычную вкладку браузера из моего приложения Chrome. Я хочу, чтобы вкладка открылась, не нужно общаться между ними. До сих пор я пробовал следующие два метода, которые создают и загружают новую вкладку.Откройте вкладку браузера с chrome-app, с доступом к localStorage
var a = document.createElement('a')
a.href = "https://example.com";
a.target = "_blank";
a.click();
var w = window.open(s.Url, "_blank");
w.focus();
Еще одна попытка, которая приводит к тому же. Этот файл жестко закодирован в html и активируется нажатием на него пользователя. Таким образом, проблема не связана с самим javascript, а тем, как хром обрабатывает внешние ссылки.
<a href="https://example.com/" target="_blank">Open external website</a>
Однако в этих созданных вкладках localStorage имеет значение NULL. Очевидно, что вкладка по-прежнему открыта в среде приложения. Если я копирую URL-адрес и вставляю его в новую вкладку, то доступна локальная хранилища.
Как открыть новую вкладку браузера, аналогичную пользовательской копии/вставке URL-адреса.
UPDATE Приложение было запущено с использованием window.open со справочной страницы, чтобы создать вкладку, а не новое окно. Если используется chrome.app.window.create, ссылки открываются корректно в браузере с доступным локальным хранилищем.
Это не справочная страница, а видимость e chrome-app tab, которая каким-то образом изолирована. Предыдущие примеры кода не выполнялись в chrome.app.window, а на вкладке, созданной с помощью window.open со справочной страницы. – hultqvist