В HTML 4.0 Strict и XHTML 1.0 STRICT атрибут target нельзя использовать в теге <a>, что расстраивает веб-дизайнеров. Он по-прежнему разрешен в переходных спецификациях. Но с помощью определенных методов мы это делаем. проблема может быть решена.
Атрибут target был удален из спецификации HTML4.0, но добавлен еще один атрибут: rel. Этот атрибут используется для указания связи между документом, содержащим ссылку, и связанным документом. Значение его атрибута определяется в спецификации. :next, previous, Chapter,section), большинство этих атрибутов используются для определения взаимосвязей между небольшими частями в большом документе. Фактически спецификация позволяет разработчикам свободно использовать нестандартные значения атрибутов для выполнения конкретных задач. приложение.
Здесь мы используем пользовательское значение external для атрибута rel, чтобы пометить ссылку для открытия нового окна.
Код ссылки, не соответствующий новейшим веб-стандартам:
<a href=document.html target=_blank>внешняя ссылка</a>
Используйте атрибут rel:
<a href=document.html rel=external>внешняя ссылка</a>
Теперь, когда мы создали ссылку на новое окно, соответствующую веб-стандартам, нам также нужно использовать JavaScript для реализации нового окна. Сценарий должен найти все те элементы в документе, которые мы определили как rel=external. когда веб-страница загружена гиперссылка.
Сначала нам нужно определиться с браузером.
if (!document.getElementsByTagName) return;
getElementsByTagName — это простой в использовании метод стандарта DOM1, и сейчас он поддерживается большинством браузеров. Поскольку некоторые старые браузеры, такие как Netscape 4 и IE4, не поддерживают DOM1, мы должны исключить его, определив, существует ли этот метод. эти старые версии браузеров.
Далее мы получаем все теги <a> в документе с помощью метода getElementsByTagName:
вар якоря = document.getElementsByTagName(a);
Якоря назначаются в виде массива, содержащего каждый тег <a>. Теперь мы должны просмотреть каждый тег <a> и изменить его:
for (var i=0; i <anchors.length; i++) {
вар якорь = якоря;
Найдите тег <a>, чтобы реализовать новое окно.
если (anchor.getAttribute(href) &&
якорь.getAttribute(rel) == внешний)
Далее создайте целевое значение атрибута и присвойте ему значение _target:
якорь.цель = _blank;
Полный код:
--------------------------
функция externalLinks() {
if (!document.getElementsByTagName) return;
вар якоря = document.getElementsByTagName(a);
for (var i=0; i<anchors.length; i++) {
вар якорь = якоря;
если (anchor.getAttribute(href) &&
якорь.getAttribute(rel) == внешний)
якорь.цель = _blank;
}
}
window.onload = внешние ссылки;