bonjour à tous,

j'ai une page html, qui est lié à un fichier javascript :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<script  src="scripts/main4.js"></script>
.

Ce code me permet de construire des "div" dans ma page html, avec l'appel à deux fonctions, quand on survole une div ou qu'on en sort, contenues également dans ce fichier .js :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// creer les blocs matière
      function creer_div() {
 
         for (var i=0; i<3; i++) {                  // choix de la table "classe&matière"
            var j=0;                            // init ref des leçons (lecon 0)
            table_source[i].forEach(element => 
                     {
                        // ATTENTION UTILISER LES CARACTERES BACKTICK DE WINDOWS : ALTGR + TOUCHE 7 DU CLAVIER ALPHANUMERIQUE
                        var mon_test =       
                                    ` <a href="${element.lien}">
                                          <div class="libellé change fin" onmouseenter =  "show_vignette(${i},${j})" onmouseleave=" kill_vignette()">
                                             ${element.titre}
                                          </div>
                                    </a>`
                        document.querySelector("#bloc"+i).insertAdjacentHTML("beforeend", mon_test);
                        j++;
                     });
         }
      }
Cela fonctionne et les fonctions sont bien appelées à l'entrée et à la sortie de chaque div ainsi construite.

Dans un second temps, je désire complexifier mon code et fonctionner en ajoutant un autre fichier .js.

J'ai donc modifié la balise de script de mon fichier html :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<script  type="module" src="scripts/main4.js"></script>
j'ai créé un fichier structure.js, avec une fonction "structurer()", précédée du mot clé "export".

J'ai ajouté l'import dans mon main4.js :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
import {structurer} from "./structure.js";

Probème
L'appel à la fonction "structurer()" du fichier "structure.js" fonctionne bien mais les appels provenant des balises html ne fonctionnent plus. il semble que le fait d'avoir mis deux fichiers .js entraine une confusion à l'appel, et les fonctions ne sont plus vues :

Uncaught ReferenceError: show_vignette is not defined
onmouseenter http://127.0.0.1:5500/menu4.html:1
menu4.html:1:1
onmouseenter http://127.0.0.1:5500/menu4.html:1

Il semble que ce soit un problème de contexte qui n'est plus implicite, mais je tourne autour du pot sans résoudre le problème....

Merci à tous ceux qui auront la solution, pour que mes appels sur "onmouseenter" et "onmouseleave", soient à nouveau orientés vers mes deux fonctions, dans le contexte d'un script en plusieurs fichiers....