Toute la question s'inscrit dans le titre. Et pour ajouter un peu de contexte: je ne demande pas ce qui est le meilleur selon ce que disent les spécifications, mais plutôt ce qui fonctionne le mieux compte tenu de la combinaison de navigateurs déployés de nos jours.
Quelques points de données:
text/javascript
pour le JS utilisé sur leur page d'accueil.text/javascript
sur Google Docs.application/x-javascript
pour servir des fichiers JavaScript avec leur service de bibliothèques Ajax .application/x-javascript
pour servir leur JS.application/x-javascript
pour le JavaScript diffusé sur leur page d'accueil.text/javascript
est obsolèteapplication/x-javascript
était expérimental en décidant de passer à…application/javascript
est le type MIME officiel actuel pour JSCela dit, les navigateurs ignorent souvent le content-type
envoyé par le serveur et portez une grande attention à l'attribut type
(et certains ne reconnaissent pas encore application/javascript
).
Ma recommandation:
type
des éléments de scriptDans la plupart des situations, le type MIME envoyé par le serveur ne fait aucune différence pratique. J'irais avec application/javascript , qui est également recommandé par un RFC.
Si vous choisissez d'utiliser application/javascript pour js dans vos pages, IE7 et IE8 n'exécuteront pas votre script! Blâmez Microsoft tout ce que vous voulez, mais si vous voulez que la plupart des gens exécutent vos pages, utilisez texte/javascript.
C'était language="javacript"
. Ensuite, il est devenu type="text/javascript"
. C'est maintenant type="application/javacript"
. Ok cela devient stupide. Certains des anciens navigateurs ne reconnaissent pas le nouveau application/javascript
, mais reconnaissent toujours les anciens text/javascript
. J'ai l'intention de continuer à l'utiliser, sinon je perdrai des heures de mon temps à essayer de changer CHAQUE instance de text/javascript
en application/javascript
.
Maintenant, un jour, le contraire pourrait être vrai. Un jour, les nouveaux navigateurs pourraient rejeter l'ancienne technique afin d'être strictement conformes aux normes.
.
Il s'agissait de "texte/javascript" mais c'est obsolète (voir Liste IANA ) et maintenant il devrait être "application/javascript" (voir ne autre liste IANA ).