При обслуживании файлов JavaScript лучше использовать приложение /javascript или application/x-javascript
Весь вопрос вписывается в заголовок. И добавить некоторый контекст: я не спрашиваю, что является лучшим в соответствии с тем, что говорят спецификаторы, а скорее тем, что работает наилучшим образом, учитывая сочетание браузеров, развернутых в настоящее время.
Некоторые точки данных:
- Google использует
text/javascript
для JS, используемого на их домашней странице.
- Google использует
text/javascript
в Документах Google.
- Google использует
application/x-javascript
для работы с файлами JavaScript с помощью службы Ajax-библиотек.
- Yahoo использует
application/x-javascript
для обслуживания своих JS.
- Yahoo использует
application/x-javascript
для JavaScript, который находится на их домашней странице.
Ответы
Ответ 1
-
text/javascript
устарел
-
application/x-javascript
был экспериментальным, решив перейти на...
-
application/javascript
- текущий официальный MIME-тип для JS
Тем не менее, браузеры часто игнорируют content-type
, отправленные сервером, и уделяют большое внимание атрибуту type
(а некоторые, возможно, еще не распознают application/javascript
).
Моя рекомендация:
- Использовать приложение /javascript на сервере
- Используйте HTML 5 и опустите атрибут
type
из script элементов
Ответ 2
В большинстве ситуаций тип mime, отправляемый сервером, не имеет практических различий. Я бы пошел с application/javascript, который также рекомендуется RFC.
Ответ 3
Это был "текст/javascript", но это устарело (см. IANA List), и теперь это должно быть "application/javascript" (см. другой список IANA).
Ответ 4
Если вы решите использовать приложение /javascript для js на своих страницах, IE7 и IE8 не будут запускать ваш script! Вручите Microsoft все, что вы хотите, но если вы хотите, чтобы большинство людей запускали ваши страницы, используйте текст/javascript.
Ответ 5
Раньше он был language="javacript"
. Затем он изменился на type="text/javascript"
. Теперь это type="application/javacript"
. Хорошо, это становится глупым. Некоторые из старых браузеров не распознают новый application/javascript
, но все же узнают более старый text/javascript
. Я планирую продолжать использовать это, иначе я буду тратить часы своего времени, пытаясь изменить КАЖДЫЙ экземпляр text/javascript
в application/javascript
.
Теперь в какой-то день может быть и наоборот. В один прекрасный день новейшие браузеры могут отказаться от старой техники, чтобы быть строго стандартным.
Но пока люди, просматривающие мой веб-сайт, не жалуются, что "с момента обновления моего браузера около 50% вашего сайта исчезло", у меня нет мотивов для изменения кода на моем сайте.