recherche

Maison  >  Questions et réponses  >  le corps du texte

Attendez que le script avec type="module" soit terminé avant d'exécuter le script suivant

Dans mon document html body 标记的底部,我有 2 个脚本标记,其中 type="module". Il y a une balise de script ci-dessous qui contient du code intégré qui dépend des résultats des deux premiers scripts.

Existe-t-il un moyen de garantir que ce code n'est exécuté qu'une fois les deux premiers scripts terminés ?

<script src="./src/js/script1.js" type="module"></script>
<script src="./src/js/script2.js" type="module"></script>
<script type="text/javascript">
  // Code inside this tag should only run after the 2 previous script tags have been executed
  console.log('Hello SO');
</script>

P粉739706089P粉739706089324 Il y a quelques jours508

répondre à tous(1)je répondrai

  • P粉127901279

    P粉1279012792024-02-18 10:42:18

    <script> 带有 type="module" 的标签会被自动赋予 defer 属性(参见 脚本的加载和执行顺序),所以为了让第三个标签在后面运行,它也需要推迟。由于内联脚本不可能做到这一点(如注释中所述),因此您可以将脚本移动到另一个文件并使用 src 属性引用它,或者将代码包装在 DOMContentLoaded auditeur d'événement pour l'événement (voir https://stackoverflow.com/a/41395202/19461620)

    Utilisez des fichiers de script externes :

    sssccc

    script.js

    // Code inside this tag should only run after the 2 previous script tags have been executed
      console.log('Hello SO');

    Utilisez DOMContentLoaded le rappel :

    sssccc

    répondre
    0
  • Annulerrépondre