Який найкращий спосіб включити файл JavaScript за допомогою тегу сценарію?


50

Я, як правило, включаю JavaScript-файли, використовуючи тег сценарію, як показано нижче.

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

Я також бачив деяких людей, які використовують мовний атрибут.

Зараз я буваю, що багато людей опускають атрибут типу. У мене почало виникати відчуття, що якщо JavaScript - це сценарій мови за замовчуванням, то навіть я повинен опустити атрибут типу. Було б добре пропустити атрибут типу? Чи це спричинило б якісь проблеми?

Відповіді:


48

Погляньте на це як на довідку (Book of Speed): http://www.bookofspeed.com/chapter3.html

По суті, найкращим способом є об'єднання всіх ваших javascript в один файл, який називається all.min.js, який також зведений до мінімуму.

Зазвичай у HTML5 ви б робили щось на кшталт:

<script src="js/all.min.js"></script>

Як бачимо, вам не потрібен атрибут типу в HTML5, але це робиться в інших версіях HTML та XHTML . Специфікація пояснює, що якщо вміст відрізняється від "text / javascript", то вам потрібно вказати атрибут типу в HTML5.

Деякі речі, які потрібно пам’ятати:

Примітка:

Якщо ви збираєтесь вказати інший тип, окрім іншого, text/javascriptви використовуєте одне з наступних:

  • "додаток / ecmascript"
  • "додаток / javascript"
  • "додаток / x-ecmascript"
  • "додаток / x-javascript"
  • "text / ecmascript" "text / javascript"
  • "текст / javascript1.0"
  • "текст / javascript1.1"
  • "текст / javascript1.2"
  • "текст / javascript1.3"
  • "текст / javascript1.4"
  • "текст / javascript1.5"
  • "текст / jscript"
  • "текст / сценарій життя"
  • "текст / x-ecmascript"
  • "текст / x-javascript"
  • "текст / javascript; e4x = 1"

Вищенаведений перелік: http://dev.w3.org/html5/spec-author-view/the-script-element.html#scriptingLanguages

Пам'ятайте, що ви б не використовували мовний атрибут, а лише атрибут типу.


2
А як щодо мовного атрибута. Це добре вказати чи пропустити?
Крекер

1
Мовний атрибут не підтримується в HTML5, замість цього вони об'єднали його з атрибутом типу. Знову ж таки, якщо це щось інше, ніж "text / javascript", то ви б вказали його за допомогою атрибуту type та одного із наведених нижче на цій сторінці: dev.w3.org/html5/spec-author-view/the-script-element .html
alvincrespo

Я оновив відповідь, щоб відображати свій коментар вище.
alvincrespo

Чи налаштування чогось подібного text/javascript1.3має якийсь фактичний ефект, відмінний від його пропуску?
Артуро Торрес Санчес
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.