Différence entre les balises 'script` et' link as= 'script'
en plus de la méthode standard de chargement des scripts:
<script src="js/script.js"></script>
j'ai vu des gens faire cela:
<link href="js/script.js" as="script">
y a-t-il une différence?
Note: Il y a un " Quelle est la différence entre utiliser un lien et une étiquette de script pour faire référence à une source JavaScript? question à propos de <link href="~/Scripts/jquery-1.4.1.js" type="text/javascript" /> , qui est différente.
1 réponses
si cette étiquette link avait rel="preload" (ou rel="modulepreload" ) sur l'it, elle indiquerait une requête de préchargement, qui préchargerait, mais ne lancerait pas, le script. Alors que bien sûr, script charge et exécute le script. Mais sans rel , ce link n'est pas valable et n'a aucun effet utile (du moins en termes de spécification).
si vous cherchez link dans la spécification, vous verrez as listé comme:
as- destination potentielle pour une demande de préchargement (pourrel="preload"etrel="modulepreload")
suivant le lien vers as attribut, il est écrit:
l'attribut
asspécifie la destination potentielle d'une demande de préchargement pour la ressource donnée par l'attributhref. C'est un attribut énuméré. Chacun la destination potentielle est un mot-clé pour cet attribut, qui correspond à un État du même nom. L'attribut doit être spécifié sur les élémentslinkqui ont un attributrelqui contient le mot-clépreload. Il peut être spécifié sur les élémentslinkqui ont un attributrelqui contient le mot-clémodulepreload; dans ces cas, il doit avoir une valeur qui est une destination de type script. Pour les autres élémentslink, il ne doit pas être spécifié.