Вкладка на веб-странице По умолчанию По умолчанию в текущем адресе ссылки на скачку окна, если вам нужно открыть на новом окне, вам нужно добавить свойство Target = «_ Blank» на вкладку. пример:
<a target="_blank" href="https://weibo.com/">打开微博页面</a>
1 Угроза безопасности
если просто добавитьtarget="_blank", после открытия нового окна новая страница может пройтиwindow.openerПолучите объект окна исходной страницы, даже если она является междоменной.
Доступ к некоторым атрибутам заблокирован из-за ограничений междоменной политики безопасности.
Однако, например, изменениеwindow.opener.locationЗначение указывает на другой адрес.
То есть вы все еще можете просматривать определенный веб-сайт только сейчас, а затем открыть новое окно, в результате новое окно изменило исходный адрес веб-страницы, не зная об этом. На этом этапе вы можете использовать маскировку страницы, например, маскировку под страницу входа и т. д., чтобы позволить пользователю ввести пароль учетной записи, чтобы достичь цели хакера.
2 проблемы с производительностью
Новое окно, открытое с помощью target="_blank", использует тот же процесс, что и исходное окно страницы. Если эта новая страница выполняет много плохого кода JavaScript и занимает много системных ресурсов, это также повлияет на производительность исходной страницы.
3 решения
- попробуй не использовать
target="_blank"; - Если вы должны использовать его, вам нужно добавить
rel="noopener"илиrel="noreferrer". Таким образом, window.openner нового окна имеет значение null, и новое окно будет выполняться в отдельном процессе без перетаскивания процесса исходной страницы. (Однако некоторые браузеры оптимизируют производительность, даже если этот атрибут не добавлен, новое окно будет открываться в отдельном процессе. Однако из соображений безопасности добавьте его.)
- Новая страница, открытая window.open:
var newWindow = window.open();
newWindow.opener = null;
newWindow.location = "https://weibo.com/";
newWindow.target = "_blank";