Я вспоминаю, что читал где-то, что в HTML5 его было уже нельзя использовать target="_blank"
в HTML5, но сейчас я не могу его найти.
Можно ли продолжать использовать target="_blank"
?
Я знаю, что это вообще плохая идея, но это самый простой способ открыть новое окно для чего-то вроде PDF, и это также не требует от вас полагаться на JavaScript.
javascript
html
window
Дэррил Хейн
источник
источник
target
и соавт. существует. Иногда они необходимы. Динамически генерируемая страница с сохранением состояния JS, например, где iframe менее желателен, чем новая вкладка (например, просмотр PDF, как указано в OP). Или когда защищенный сайт (например, банк) отправляет вас на внешнюю ссылку, но не позволяет использовать кнопку возврата из-за истечения срока действия контента. Как и все вещи, этот атрибут HTML не является «плохой идеей» для использования, но его следует использовать с осторожностью и осторожностью, как с любой библиотекой, классом, функцией и свойством во всем программировании.Ответы:
Похоже,
target="_blank"
все еще в порядке. Он указан как ключевое слово для просмотра контекста в последнем проекте HTML5 .источник
target="_blank"
приведет к открытию нового окна каждый раз, когда пользователь нажимает на ссылку. Если это действительно то, чего вы хотите (и это редко случается), подумайте об использовании,target="somethingUnique"
чтобы пользователь открывал только одно окно, даже если он щелкнул ссылку несколько раз. Это делает UX гораздо приятнее.target="_blank"
это хорошо, являются кнопки обмена.Это нормально использовать
target="_blank"
; Это было устранено в XHTML, потому что нацеливание на новые окна всегда вызывает всплывающее предупреждение в большинстве браузеров. XHTML всегда будет отображать ошибку с целевым атрибутом в валидации.HTML 5 вернул его, потому что мы все еще используем его. Это наш друг, и мы не можем его отпустить.
Никогда не отпускать.
источник
Хотя
target="_blank"
это приемлемо в HTML5 , я лично стараюсь никогда не использовать его (даже для открытия PDF-файлов в новом окне).HTML должен определять значение и содержание . Спросите себя, «бы смысл в
a
изменении элемента , еслиtarget
атрибут был удален?» Если нет, код не должен идти в HTML. (На самом деле, я удивлен, что W3C сохранил это… Я думаю, они действительно просто не могут отпустить.)Поведение браузера , в частности интерактивное поведение с пользователем , должно быть реализовано с помощью клиентских языков сценариев, таких как JavaScript. Поскольку вы хотите, чтобы браузер вел себя определенным образом, т. Е. Открывал новое окно, вам следует использовать JS. Но, как вы упомянули, такое поведение требует, чтобы браузер полагался на JS. (Хотя, если ваш сайт ухудшается изящно, или постепенно улучшается, или что- то еще, то все равно должно быть в порядке. Пользователи с отключенным JS не будут сильно скучать.)
При этом, ни один из них не является правильным ответом. Где-то где-то существует мнение, что конечный пользователь в конечном итоге должен решить , как открыть ссылку . Возьми этот пример.
При этом веб-разработчики должны прояснить, куда переходят их ссылки, на какие типы и / или форматы источников они ссылаются и что они делают. Подсказки могут быть вашими друзьями (если вы не используете планшет или телефон; в этом случае укажите их на мобильном сайте). Мы все знаем, как это ужасно, когда нас куда-то берут, чего мы не ожидали, или что-то происходит, чего мы не хотели.
источник
Это также самый простой способ раздражать не-Windows пользователей. PDF прекрасно открываются в браузерах на других платформах. Открытие нового окна также портит историю навигации и усложняет работу на небольших платформах, таких как смартфоны.
НЕ открывайте новые окна для таких вещей, как PDF, только потому, что старые версии Windows были сломаны.
источник
Большинство веб-разработчиков используют
target="_blank"
только для открытия ссылок в новой вкладке. Если вы используетеtarget="_blank"
только для открытия ссылок в новой вкладке, то он уязвим для атакующего. Когда вы открываете ссылку в новой вкладке (target="_blank"
), страница, которая открывается в новой вкладке, может получить доступ к начальной вкладке и изменить ее местоположение с помощьюwindow.opener
свойства.Javascript код:
Предупреждение:
источник
Хотя цель все еще приемлема в HTML5, она не является предпочтительной. Для ссылки на файл PDF используйте атрибут загрузки вместо целевого атрибута.
Вот пример:
Если исходное имя файла закодировано для уникального хранилища файлов, вы можете указать удобное для пользователя имя загрузки, присвоив значение атрибуту загрузки:
Имейте в виду, что в то время как большинство современных браузеров поддерживают эту функцию, некоторые не могут. Смотрите caniuse.com для получения дополнительной информации.
источник
Это точно!
http://www.w3.org/TR/2010/WD-html5-20100624/text-level-semantics.html#the-a-element
источник
Вы можете сделать это следующим образом с jquery, это откроет его в новом окне:
источник
Я думаю, что атрибут target для
<link>
элемента устарел , но<a>
, возможно, поэтому вы слышали, что он больше не должен использоваться.источник