html - как мне загрузить страницу в новой вкладке в IE8?

Какая комбинация настроек html и IE8 заставляет IE8 открывать ссылки в новой вкладке. Или вы не можете сделать это с IE8, и вы получите новые вкладки, только вручную выбрав File-> new / duplicate tab?

Мой веб-сайт работает в Firefox - страницы на сайте загружаются в текущую вкладку, а ссылки за пределами сайта загружают новую вкладку. IE8 не будет себя вести: target = "_ blank" открывает полностью новое окно; остальные параметры, _self _top _parent, открывают страницу в текущей вкладке.

У меня Firefox установлен на «Открывать новые окна в новой вкладке». Все ссылки на страницы моего сайта имеют target = "_ self", и Firefox сохраняет их на текущей вкладке. Для внешних ссылок у меня нет целевого набора (я добавил _blank, чтобы проверить, исправил ли он IE8, и это не повлияло на Firefox).

Я не могу найти эквивалентную настройку в IE8. Инструменты-Свойства обозревателя-Общие-Вкладки / Настройки имеют поле включения вкладок и дополнительную опцию для автоматического переключения на вновь открытые вкладки. Есть ли какой-нибудь HTML-код, который будет работать? Мне не хватает настройки IE8?

Любая помощь приветствуется.


person Rilien    schedule 13.03.2010    source источник


Ответы (5)


Ответ на вопрос был размещен в комментариях (но сейчас удален). Теперь вы можете протестировать его в IE8 - просто используйте среднюю кнопку мыши, чтобы открыть ссылку в новой вкладке. Firefox лучше работает с вкладками.

person elmer    schedule 13.03.2010

Это не та вещь, которую вы можете контролировать из HTML-кода, поскольку это должно быть решение пользователя, а не автора документа, как открыть ссылку.

Чтобы открывать всплывающие окна в новой вкладке, следуйте инструкциям из справки IE8:

Чтобы изменить способ отображения всплывающих окон

В Internet Explorer нажмите кнопку «Сервис», а затем - «Свойства обозревателя». Щелкните вкладку Общие, а затем в разделе Вкладки щелкните Параметры. Сделайте выбор в разделе При обнаружении всплывающего окна. Дважды щелкните ОК.

Обновлено: при чтении комментариев OP к другим сообщениям кажется, что цель состоит в том, чтобы все внешние ссылки открывались в новых вкладках. Однако это не выбор автора документа, как клиент должен открывать любую ссылку на любой странице - это должен решать клиент. Более того, даже несмотря на то, что вы можете создать клиентский скрипт, который устанавливает свойство target для открытия всплывающих окон, в объектной модели документа нет понятия «вкладка», и, следовательно, вы не можете сделать это даже в скрипте.

person naivists    schedule 13.03.2010
comment
Я не говорю о всплывающих окнах. Я их ненавижу и никогда не стану никого беспокоить. Я так понимаю, это должна быть настройка браузера. В IE8 есть вкладки. Как заставить их работать? - person Rilien; 13.03.2010
comment
Обновил ваш пост, но не отвечал на вопрос. Вопрос: IE8 имеет просмотр с вкладками. При какой комбинации настроек html и IE8 внешние ссылки на моем сайте открываются в новой вкладке? -ИЛИ IE8 открывает новые вкладки только при ручном открытии вкладки «Файл» ›Новая / дублирующая вкладка? - person Rilien; 13.03.2010
comment
подобно другим современным браузерам, IE открывает ссылку в новой вкладке, если вы удерживаете клавишу Ctrl при нажатии на ссылку. Не существует конкретного значения атрибута target, которое можно было бы использовать, поскольку HTML был изобретен за десять лет до того, как вкладки стали популярными. - person naivists; 13.03.2010

То, как браузер интерпретирует цель, зависит от браузера - каждый поставщик укажет, что он хочет. Firefox решил использовать новую вкладку, IE решил использовать новое окно.

В спецификации html 4.01 сказано следующее: " _пустой":

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

Спецификация появилась раньше, чем теперь широко используется просмотр с вкладками, поэтому нигде не упоминается эта концепция.

person Oded    schedule 13.03.2010
comment
IE8 имеет просмотр с вкладками. При какой комбинации настроек html и IE8 внешние ссылки на моем сайте открываются в новой вкладке? - person Rilien; 13.03.2010
comment
Никто. IE не отличает внутренние ссылки от внешних. - person naivists; 13.03.2010
comment
Я бы этого не ожидал. Как я уже сказал, настройки html (target =) для внутренних и внешних ссылок различаются. - person Rilien; 13.03.2010

Открытие страницы в новой вкладке - это концепция, которая, как полагают, не охватывается стандартом html. Поведение Firefox - это просто настройка в браузере, которую IE8 может иметь, а может и не иметь.

Кстати, я лично считаю оскорбительным для веб-сайтов выбор открытия страницы в новой вкладке / окне. Что, если я хочу, чтобы он открывался в текущей вкладке / окне?

Конечно, на многофункциональном сайте, похожем на приложение, который по сути является полностью приложением, я считаю удобным, чтобы страницы открывались в новой вкладке / окне. Это делает их больше похожими на настольные приложения.

Для обычных страниц я бы посоветовал вообще не устанавливать цель и позволить пользователю решать.

person Simon Lindgren    schedule 13.03.2010
comment
IE8 имеет просмотр с вкладками. При какой комбинации настроек html и IE8 внешние ссылки на моем сайте открываются в новой вкладке? - person Rilien; 13.03.2010
comment
@erynion - Извините, что не знаю. Я хочу сказать, что вы, как разработчик, не должны об этом заботиться. Если пользователь хочет, чтобы это было определенным образом, он изменит свои настройки или переключит браузер. Единственное, что вы можете сделать, это сделать то, что вы сделали, а именно добавить target = _blank к ссылкам. С другой стороны, я тоже против этого, поскольку вы тем самым убираете выбор пользователя. - person Simon Lindgren; 14.03.2010

Я думаю, что W3.org все еще работает над этой проблемой, но пока это не реализовано ни в одном браузере. Также помните, что Internet Explorer будет последним браузером, который его реализует;)

Это код, скопированный из рабочего проекта W3:

/* If a user wanted to have new windows open in new tabs instead, she could use the following user style sheet to do so: */

* { target-new: tab ! important }

Конечно, невозможно установить пользовательские предпочтения в HTML или Javascript - это было бы небезопасно.

person Harmen    schedule 13.03.2010
comment
Говорят ли люди, что единственный способ, которым IE8 открывает новую вкладку, - это когда вы вручную создаете файл- ›новую вкладку / дублирующую вкладку? Если нет, то какая комбинация настроек html и IE8 открывает ссылку на новой вкладке в IE8? - person Rilien; 13.03.2010
comment
@erynion - Нет. Пользователь может открыть ссылку в новой вкладке, нажав среднюю кнопку или выбрав из контекстного меню. Совершенно не нужно менять HTML. - person Alohci; 13.03.2010
comment
Легкий ответ, который было очень трудно получить. Спасибо. - person Rilien; 15.03.2010