<script> : attribut type

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

L'attribut type de l'élément <script> indique le type de script représenté par l'élément : un script classique, un module JavaScript, une carte (map) d'import, ou un bloc de données.

Valeur

La valeur de cet attribut indique le type de données représenté par le script. La valeur pourra être :

Aucune valeur (l'attribut n'est pas défini), c'est le comportement par défaut. Ou une chaîne vide ou un type MIME JavaScript

La valeur indique que le script est un script « classique » qui contient du code JavaScript. Il est recommandé d'omettre l'attribut plutôt que de préciser un type MIME JavaScript si le script est un script JavaScript classique. Les types MIME JavaScript sont listés dans la spécification des types de média IANA.

module

La valeur indique que le code doit être traité comme un module JavaScript. Le traitement du contenu du script est différé et les attributs charset et defer n'ont pas d'effet. Pour plus d'informations sur l'utilisation de module, voir le guide sur les modules JavaScript. À la différence des scripts classiques, les scripts des modules doivent implémenter et respecter les règles CORS s'ils sont récupérés depuis une origine tierce.

importmap

La valeur indique que le contenu de l'élément contient une carte d'import (import map). Cette carte est un objet JSON que les développeuses et développeurs peuvent utiliser pour contrôler la façon dont le navigateur résout les spécificateurs de modules lors de l'import de modules JavaScript

Toute autre valeur

Le contenu embarqué est traité comme un bloc de données et ne sera pas traité par le navigateur. Afin d'indiquer des blocs de données, les développeuses et développeurs doivent utiliser un type MIME valide qui n'est pas un type MIME JavaScript. Tous les autres attributs seront ignorés, y compris l'attribut src.

Note : Dans les navigateurs antérieurs, le type identifiait le langage de script du code embarqué ou importé (à travers l'attribut src).

Spécifications

Specification
HTML
# attr-script-type

Compatibilité des navigateurs

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
type
type="importmap"
importmap.integrity
Multiple import maps
Experimental
type="module"
type="speculationrules"
Experimental
eagerness key
Experimental
expects_no_vary_search key
Experimental
prefetch key
Experimental
prerender key
Experimental
referrer_policy key
Experimental
relative_to key
Experimental
requires key
Experimental
anonymous-client-ip-when-cross-origin value
Experimental
source key is optional
Experimental
urls key
Experimental
where key
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
In development. Supported in a pre-release version.
In development. Supported in a pre-release version.
No support
No support
Experimental. Expect behavior to change in the future.
See implementation notes.
Has more compatibility info.