Подтвердить что ты не робот

"<script type = 'text/javascript'>" неверно?

В aminutewithbrendan, brendan eich делает комментарий в стороне, подразумевая, что сервисные скрипты как

<script type='text/javascript'></script>

неверно, потому что "text/javascript" не является допустимым типом MIME, и он утверждает, что "application/javascript" является допустимым типом MIME.

Мне только заботится об обслуживании HTML5 как doctype.

  • Где типы MIME для <script>, определенные в спецификации html5 W3C?
  • Что такое поддержка браузера, например, для "text/javascript" и "application/javascript"?
  • Что следует использовать? В качестве альтернативы, мы просто не должны устанавливать type вообще?

Литеральная цитата от brendan: (1:48)

... или script type равно application/javascript или application/ecmascript, это официальные типы MIME или один из тех, что были сделаны из HTML4, например text/javascript...

Связанный:

Объединение связанных ресурсов на самом деле не отвечает на все три вопроса.

4b9b3361

Ответ 1

Где типы MIME для <script>, определенные в спецификации html5 W3C?

Нигде он имеет список (который включает в себя некоторые экспериментальные и устаревшие), но заявляет, что вы можете использовать любой тип MIME, который вам нравится. Типы MIME определены IANA, а text/javascript официально отмечен как устаревший в пользу application/javascript

Что такое поддержка браузера, например, для "text/javascript" и "application/javascript"?

Не достаточно. Есть еще много обозревателей, которые не распознают последнее. (Это, однако, только проблема с атрибутом type, вы можете правильно настроить заголовок HTTP Content-Type, не беспокоясь).

Что следует использовать? В качестве альтернативы, мы просто не будем устанавливать тип вообще?

Поскольку вы только заботитесь о HTML 5, просто опустите атрибут type полностью. Он является необязательным, а языком по умолчанию является JavaScript.

Ответ 2

Я думаю, что Брэндон (по крайней мере) частично ошибается. В последнем редакторе HTML5 (15 августа 2011 года) говорится:

Атрибут type предоставляет язык script или формат данные. Если атрибут присутствует, его значение должно быть допустимым MIME тип. Параметр charset не указывается. Значение по умолчанию, которое используется, если атрибут отсутствует, является "text/javascript".

Итак, если вы не включаете атрибут type, значением по умолчанию является "text/javascript". Если это значение по умолчанию, оно должно быть допустимым типом MIME.

Каковы другие допустимые типы MIME? Спецификация, похоже, не дает примерный список, но он определяет требуемый формат, когда он говорит:

Строка является допустимым типом MIME, если она соответствует типу медиа-типа определенный в разделе 3.7 "Типы носителей" RFC 2616

Что вы можете получить от радости от чтения здесь:

http://www.ietf.org/rfc/rfc2616.txt

Изменить: Quentin прав: для HTML5 нет необходимости включать атрибут type, если вы используете Javascript.