ссылка rel = "script" использование - PullRequest
3 голосов
/ 04 сентября 2010

Я читаю XHTML 1.0 Strict Doctype и обнаружил, что есть значение "script" для атрибута rel в элементе link.

<link rel="script" href="..." />

Я пытался использовать этот тег для связи с внешними файлами JS, но Safari даже не загружает файл.Так для чего можно использовать этот тег?

Обновление:

После перечитывания DTD в нем точно не указаны допустимые значения атрибута rel.Значение 'script' появляется только в качестве примера в комментарии.Таким образом, это может или не может быть реализовано во всех браузерах.

Ответы [ 5 ]

5 голосов
/ 04 сентября 2010

Элемент link предназначен для передачи информации о взаимосвязи между просматриваемой страницей и содержимым элемента.

Из spec :

Хотя LINK не имеет контента, он передает информацию о взаимоотношениях, которая может быть обработана пользовательскими агентами различными способами

Итак, только для информации.

4 голосов
/ 04 сентября 2010

Существует не только значение «script», «rel» может содержать любой допустимый атрибут содержимого.Вопросы:

  1. Какие значения имеют определенные значения (обычно с помощью спецификаций, таких как XHTML 1.0)?
  2. Какие браузеры поддерживают их?

Очевидно, чтоW3C хотел, чтобы скрипты были включены как таблицы стилей (<link rel="Stylesheets" …>), но не упоминал об этом в разделах прозаической спецификации, только в комментариях DTD.Вы также можете найти это в HTML 4.01 строгом DTD (XHTML 1.0 - это просто переформулировка HTML 4.01 в XML).Как ни странно, он не упоминается ни в соответствующем разделе типа ссылки , ни в разделе сценария .Это может быть артефактом идеи, которая была отклонена позже.

Это подводит нас к ответу на вопрос 2. Он неправильно реализован в браузерах, по крайней мере, в Safari (вы упомянули об этом сами).Таким образом, вы не должны использовать его, потому что он не будет работать кросс-браузер.Вы можете использовать его как хак (чтобы включить скрипты, которые не будут загружаться Safari), но это небезопасно, поскольку вы не можете определить, изменит ли поведение более поздняя версия Safari.

0 голосов
/ 04 сентября 2010

Вы можете перейти на это http://www.w3.org/TR/html401/struct/links.html#h-12.1.2

0 голосов
/ 04 сентября 2010

Чтобы загрузить файл javascript, вы должны написать:

<script type="text/javascript" src="/path/to/file.js"></script>

Я думаю, вы запутались с загрузкой файла CSS:

<link rel="stylesheet" type="text/css" ref="myFile.css"/>
0 голосов
/ 04 сентября 2010

Внешние js-файлы обычно загружаются с тегом <script>:

<script type="text/javascript" src="/foo.js"></script>
...