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.

0
demandé sur T.J. Crowder 2018-06-29 19:26:55

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 (pour rel="preload" et rel="modulepreload" )

suivant le lien vers as attribut, il est écrit:

l'attribut as spécifie la destination potentielle d'une demande de préchargement pour la ressource donnée par l'attribut href . 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éments link qui ont un attribut rel qui contient le mot-clé preload . Il peut être spécifié sur les éléments link qui ont un attribut rel qui contient le mot-clé modulepreload ; dans ces cas, il doit avoir une valeur qui est une destination de type script. Pour les autres éléments link , il ne doit pas être spécifié.

4
répondu T.J. Crowder 2018-06-29 16:53:13