Je suis habitué à inclure et à utiliser JS comme ça:
<script type='text/javascript' src='/path/to/script.js'></script> .... <script type='text/javascript'> alert('Do some stuff here, using resources defined in script.js.'); </script>
Par curiosité, est-ce que quelqu'un connaît la règle d'avoir un script en ligne avec une attribue src, comme:
<script type='text/javascript' src='/path/to/script.js'> alert('Do some stuff here, using resources defined in script.js.'); </script>
Je peux tester ce qui se passe dans divers navigateurs, mais j'aimerais savoir quel est le comportement officiel.
C'est l'une ou l'autre, pas les deux. L'attribut src
de la <script>
a priorité sur le corps de la balise.
Spécification HTML 4.01 :
Le script peut être défini dans le contenu de l'élément SCRIPT ou dans un fichier externe. Si l'attribut
src
n'est pas défini, les agents utilisateurs doivent interpréter le contenu de l'élément comme le script. Si lasrc
a une valeur URI, les agents utilisateurs doivent ignorer le contenu de l'élément et récupérer le script via l'URI.
La spécification HTML indique
Si la src a une valeur URI, les agents utilisateurs doivent ignorer le contenu de l'élément et récupérer le script via l'URI.
À partir de la norme HTML 4 :
Si l'attribut src n'est pas défini, les agents utilisateurs doivent interpréter le contenu de l'élément comme le script. Si la src a une valeur URI, les agents utilisateurs doivent ignorer le contenu de l'élément et récupérer le script via l'URI.