Quel est le meilleur moyen d'inclure un fichier JavaScript à l'aide d'une balise script?


50

J'inclus généralement les fichiers JavaScript en utilisant la balise script ci-dessous.

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

J'ai vu certaines personnes utiliser l'attribut language également.

De nos jours, de nombreuses personnes omettent l'attribut type. J'ai commencé à avoir le sentiment que si JavaScript est le langage de script par défaut, je devrais même omettre l'attribut type. Serait-il bon d'omettre l'attribut type? Cela poserait-il des problèmes?

Réponses:


48

Jetez un coup d'oeil à cela comme référence (Book of Speed): http://www.bookofspeed.com/chapter3.html

Le meilleur moyen consiste essentiellement à combiner tout votre javascript dans un fichier appelé quelque chose comme all.min.js, qui est également réduit au minimum.

Typiquement, en HTML5, vous feriez quelque chose comme:

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

Comme vous pouvez le constater, vous n'avez PAS besoin de l'attribut type dans HTML5, mais dans d'autres versions de HTML et XHTML . La spécification précise que si le contenu est autre que "text / javascript", vous devez spécifier l'attribut type en HTML5.

Quelques points à retenir:

Remarque:

Si vous spécifiez un autre type que celui que text/javascriptvous utiliseriez, utilisez l'un des éléments suivants:

  • "application / ecmascript"
  • "application / javascript"
  • "application / x-ecmascript"
  • "application / x-javascript"
  • "text / ecmascript" "text / javascript"
  • "text / javascript1.0"
  • "text / javascript1.1"
  • "text / javascript1.2"
  • "text / javascript1.3"
  • "text / javascript1.4"
  • "text / javascript1.5"
  • "text / jscript"
  • "text / livescript"
  • "text / x-ecmascript"
  • "text / x-javascript"
  • "text / javascript; e4x = 1"

La liste ci-dessus provient de: http://dev.w3.org/html5/spec-author-view/the-script-element.html#scriptingLanguages

N'oubliez pas que vous n'utiliseriez pas l'attribut language, mais uniquement l'attribut type.


2
Et que dire de l'attribut de langue. Est-il bon de le spécifier ou de l'omettre?
Cracker

1
L'attribut de langue n'est pas pris en charge en HTML5, mais ils l'ont fusionné avec l'attribut type. Encore une fois, s'il s'agit d'un élément autre que "text / javascript", spécifiez-le à l'aide de l'attribut type et de l'un des éléments suivants à partir de cette page: dev.w3.org/html5/spec-author-view/the-script-element .html
alvincrespo

J'ai mis à jour la réponse pour refléter mon commentaire ci-dessus.
alvincrespo

Est-ce que définir quelque chose comme text/javascript1.3ayant un effet réel, différent de l'omettre?
Arturo Torres Sánchez
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.