HTML: как заставить ссылки открываться на новой вкладке, а не в новом окне

Я использую target="_blank" чтобы открывать ссылки в новой вкладке. Но в IE он открывает новое окно, которое полностью логично, потому что именно это и должно делать _blank.

И я не знаю, как target="_blank" ведет себя в других браузерах.

Есть ли что-то, чтобы заставить ссылки открываться в новой вкладке. Если браузер поддерживает вкладки... иначе создайте новое окно

Ответ 1

Невозможно сделать это как автора HTML, который отображает браузер. По крайней мере, я еще не знаю. Это в значительной степени зависит от браузера и его настроек/предпочтений, установленных самими пользователями.

Кроме того, вы не должны накладывать это на любого пользователя. Браузер - это свойство пользователя. Если пользователь хочет открыть все ссылки на вкладках или в новых окнах, тогда пусть пользователь сделает именно это.

Хорошо, что мы не можем делать определенные вещи. target=_blank по-прежнему подвергается насилию, и всплывающие окна делаются до смерти.

Ответ 2

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

<a href="[yourlink]" target="_blank" style="target-new: tab;">Google</a>

Ниже приведены параметры для нового стиля:

target-new: window | tab | none 

Не тестировал параметр none, возможно, он использует настройку браузера по умолчанию.

Я подтвердил это для Firefox и IE7-9.

Ответ 3

Нет, нет.

Ответ 4

Я надеюсь, что это поможет вам

window.open(URL, '_ newtab');

Ответ 5

Способ, которым браузер обрабатывает новые окна и новую вкладку, задается в настройках браузера и может быть изменен только пользователем.

Ответ 6

Я не пробовал это, но думаю, что он работает во всех браузерах:

target="_parent"

Ответ 7

onclick="window.open(this.href,'_blank');return false;"

Ответ 8

a {
    target-name: new;
    target-new: tab;
}

Свойство target-new указывает, должны ли новые целевые ссылки открываться в новом окне или на новой вкладке существующего окна.

Примечание. Свойство target-new работает только в том случае, если свойство target-name создает новую вкладку или новое окно.

Ответ 9

Вы можете изменить способ открытия Safari новой страницы в Safari > "Настройки" > "Вкладки" > "Открыть страницы в закладках вместо окон" > "Автоматически"

Ответ 10

Вы можете установить IE для открытия ссылок на новой вкладке, просто перейдите в меню настроек.

Ответ 11

В Internet Explorer выберите Инструменты → Свойства обозревателя. Нажмите вкладку "Общие" → "Вкладки" → "Настройки". Выберите "Когда всплывающее окно встречается" → Всегда открывать всплывающее окно в новой вкладке. Нажмите "ОК".

Ответ 12

Это возможно!

Отменяет настройки браузера. Надеюсь, это сработает для вас.

<script type="text/javascript">
// Popup window code
function newPopup(url) {
    popupWindow = window.open(url,'popUpWindow1','height=600,width=600,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
}
</script>

<body>
  <a href="JavaScript:newPopup('http://stimsonstopmotion.wordpress.com');">Try me</a>
</body>

Ответ 13

Просто использование "target = _blank" будет учитывать предпочтение пользователя/браузера, использовать ли вкладку или новое окно, которое в большинстве случаев "делает правильную вещь".

  • IE9 + По умолчанию: вкладка: Предпочтение: "Всегда открывать всплывающие окна на новой вкладке"
  • Chrome По умолчанию: вкладка. Скрытое предпочтение:
  • Firefox: По умолчанию: вкладка https://support.mozilla.org/en-US/kb/tab-preferences-and-settings
  • Safari: по умолчанию: вкладка

Если вы укажете размеры нового окна, некоторые браузеры будут использовать это как индикатор того, что требуется определенный размер, и в этом случае всегда будет использоваться новое окно. Пример кода Переполнение стека

Ответ 14

Попробуйте использовать функцию javascript, подобную этой

Html:

<a href="javascript:void(0)" onclick="open_win()">Target</a>

JavaScript:

<script>
function open_win() 
{
window.open("https://www.google.co.in/");
}
</script>