Bonjour � tous,
Je viens vers vous avec un soucis que je ne parviens pas � r�gler meme en "googlelisant" � fond...j'ai bien peur que la solution n'existe pas, mais au cas ou je pr�f�re quand meme demander votre avis...


Voila, dans le cadre du developpement d'un mini framework JS, je me refuse � includer syst�matiquement une ribambelle de fichier JS (1 par type de composants) dans chacun des mes fichiers HTML.

Ce que je veux, c'est avoir une seul balise script pointant vers un fichier "engine.js" et que ce soit celui-ci qui include (ou non) les composant (fichier js) dont la page � besoin

Ca parait compliqu�, mais je m'y retrouve et tout fonctionne bien � un (gros) d�tail pr�s.

En effet, ma fonction pour includer utiliser le DOM pour cr�er une nouvelle balise de type "script" puis lui affecter un type (text/javascript) et un src (chemin vers le js en question).

Le soucis, c'est que quand j'utilise cette fonction, bien que le script soit bien ajout� � l'arbre DOM (en mettant en simple alert() en d�but du fichier � includer, on voit bien que le script est interpr�t� puisque l'alert apparait � l'execution), les fonctions d�clar�es dans le JS includ� ne sont pas directement accessible. Il me faut sortir de la fonction ayant fait l'include avant qu'elle ne soient accessible.

pour illustrer un peu voici 2 petits exemples:


ce qui marche po:

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
20
21
22
23
24
25
26
27
28
 
 
   <html>
     <head
       <script type='text/javascript'>
 
              function include(sFilePath) {
 
                  var oScript = document.createElement('script');
                  oScript.type = 'text/javascript';
                  oScript.src = sFilePath;
                  document.getElementsByTagName('heade')[0].appendChild(oScript);
 
              }
 
              function test() {
 
                    include('monfichier.js');
                    fonctiondansmonfichier();
 
              }
 
        </script>
      </head>
      <body>
             <input type='button' OnClick='test();'>
      </body>
</html>
ce qui marche

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
20
21
22
23
24
25
26
27
28
 
 
   <html>
     <head
       <script type='text/javascript'>
 
              function include(sFilePath) {
 
                  var oScript = document.createElement('script');
                  oScript.type = 'text/javascript';
                  oScript.src = sFilePath;
                  document.getElementsByTagName('heade')[0].appendChild(oScript);
 
              }
 
              function test() {
 
                    include('monfichier.js');
 
              }
 
        </script>
      </head>
      <body>
             <input type='button' OnClick='test();'>
             <input type='button' OnClick='fonctiondansmonfichier();'>
      </body>
</html>

Voila, bah si quelqu'un pouvait me dire comment faire en sorte de pouvoir dierctement utiliser les fonctions ajouter ainsi ca m'arrangerait tr�s beaucoup [smile]

merci d'avoir lut jusqu'au bout en tous cas