Le bouton "sans DOM" ne fonctionne jamais !
Car, la fonction appelée se situe dans un fichier JS appelé via le
type="module"
et qu'elle appelée via l'attribut
onclick
...
Et, il ne fonctionne pas si on supprime type="module"
...
Car, la fonction appelée est une fonction importée.
<p> <button onclick="info();">sans Dom</button> <button id="btn2">Dom-0</button> <button id="btn3">Dom-2</button> </p> </header> </div> <script src="main.js"> <script src="m_main.js" type="module"> </body> </html>
m_main.js
:
import { info } from './modules/m_test.js'; function clic(){ /* alert("entré dans la fonction clic() !") */ info() } /* onclick="clic()" dans le code HTML ... ne fonctionnne pas si la fonction appelée est située dans un module JS */ /* DOM-0 : ajouter un écouteur */ document.getElementById("btn2").onclick = function(evt){ clic() } /* DOM-2 : ajouter un écouteur */ document.getElementById("btn3").addEventListener('click', function(){ clic() }); /* console.log("m_main.js lu") */
./modules/test/m_test.js
:
function info() { alert("Test réussi !"); } export { info };