IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Appeler un sous script javascript -> ?


Sujet :

JavaScript

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    186
    D�tails du profil
    Informations personnelles :
    �ge : 60
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 186
    Par d�faut Appeler un sous script javascript -> ?
    Bonjour � tous,
    Voil� ce qui m'am�ne aujourd'hui : J'aimerais pouvoir appeler, depuis un javascript, un autre javascript (externe, donc), un peu � la fa�on du fameux "Gosub" du langage "basic" (par exemple) -> Est-ce possible, SVP ?

    Par avance Merci pour toute suggestion que vous pourriez avoir !

  2. #2
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    D�cembre 2010
    Messages
    1 009
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activit� : sans emploi

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 1 009
    Par d�faut
    je ne connais pas gosub, donc je ne suis pas s�r de partir dans la bonne r�ponse, mais pour ajouter un nouveau fichier javascript � un document depuis une source tu peux faire comme ceci (au fait, la question revient souvent donc prend le temps de faire une recherche la prochaine fois avant de poser une question)

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    var script = document.createElement('script');
    script.src = 'http://www.tonsite.com/tonscript.js';
    //script.type = 'text/javascript'; // optionnel, jQuery ne le fait pas donc je pense qu'on peut aussi s'en passer.
    document.getElementsByTagName('head')[0].appendChild(script);

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    186
    D�tails du profil
    Informations personnelles :
    �ge : 60
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 186
    Par d�faut
    Merci Willpower pour ta proposition !

    L'int�r�t du "Gosub" est de pouvoir imbriquer un code dans un autre code comme si il faisait partie int�grante de ce code -> Je viens d'essayer avec le code que tu m'as propos� (voir ci-dessous) et, effectivement, en regardant avec "Firebug", je vois que "TEST1" et "TEST2" ont bien �t� charg�s dans mon navigateur...

    Ceci dit, seul le titre "<H3>Hum1...</H3>" est affich� � l'�cran !
    -> Comment puis-je faire pour que le titre "<H3>Hum2...</H3>" (contenu dans "TEST2.js") s'affiche �galement (de fa�on "imbriqu�e") ?

    PS: Pour information, j'ai bien fait ma "petite recherche" avant de mettre ce post, mais c'est justement parce que je n'ai pas su trouver que j'ai entr� ce post. Ceci dit, je reste ouvert � toute piste ext�rieure ou propre � ce site qui puisse m'aider � r�soudre ma probl�matique du moment !

    TEST1.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
    20
    21
    22
    23
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     
    <html lang="fr">
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     
      <title></title>
     
      <script type="text/javascript">
        document.write("<H3>Hum1...</H3>"); 
     
    	var script = document.createElement('script');
    	script.src = 'TEST2.js';
    	//script.type = 'text/javascript'; // optionnel, jQuery ne le fait pas donc je pense qu'on peut aussi s'en passer.
    	document.getElementsByTagName('head')[0].appendChild(script);
      </script>
    </head>
    <body>
     
    <!-- Document -->
     
    </body>
    </html>
    TEST2.js
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    	document.write("<H3>Hum2...</H3>");

  4. #4
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    D�cembre 2010
    Messages
    1 009
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activit� : sans emploi

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 1 009
    Par d�faut
    arg, des document.write ... j'aime pas trop beaucoup �a.

    mais soit, allons jusqu'au bout, la solution devient donc :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.write("<script type='text/javascript' src='TEST2.js'></sc"+"ript>");
    nb: j'ai �cris la balise fermante de script en la divisant en 2 strings pour �viter un bug "normal" :

    au lieu d'interpr�ter ceci :
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
     // ouverture de la balise script
      <script type="text/javascript">
        document.write("<H3>Hum1...</H3>"); 
        document.write("<script src='TEST2.js'></script>");
    // fermeture de la balise script
      </script>

    ta page html va interpr�ter ceci :
    Code html : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    //ouverture de la balise script
      <script type="text/javascript">
        document.write("<H3>Hum1...</H3>"); 
    // code inachevé et donc erreur
        document.write("<script src='TEST2.js'>
    // fermeture de la balise script
       </script>
    // code non html
    ");
    // fermeture d'une balise script en trop
      </script>

  5. #5
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    D�cembre 2010
    Messages
    1 009
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activit� : sans emploi

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 1 009
    Par d�faut
    mais fait gaffe au comportement qui diff�re sous les navigateurs pour le document.write :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
        document.write("<H3>Hum1...</H3>"); 
        document.write("<script src='TEST2.js'></sc"+"ript>");
        document.write("<H3>Hum3...</H3>");
    va t'afficher :
    Hum1
    Hum2
    Hum3

    sous chrome et firefox

    mais :
    Hum1
    Hum3
    Hum2

    sous IE.

    edit: je te d�conseille vivement d'utiliser ce syst�me car ce n'est pas une bonne pratique (du tout).

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    186
    D�tails du profil
    Informations personnelles :
    �ge : 60
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 186
    Par d�faut
    Ok Willpower, �a colle pour moi !
    Effectivement, l�, � pr�sent, j'ai bien une imbrication de mon code... et �a s'affiche "correct" � l'�cran...

    Ceci dit, vu ce que tu me dis / aux inconv�nients de "document.write()", aurais-tu une alternative � me proposer � ce code :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    document.write("<script type='text/javascript' src='TEST2.js'></sc"+"ript>");
    PS : L�, �a n'est qu'un test, �videmment, car TEST2 comprend en fait plus de 500 lignes de code js -> On est loin du simple et limit� "document.write()" -> J'esp�re que ta suggestion "tiendra la route" quand m�me !

  7. #7
    Membre confirm�
    Profil pro
    Inscrit en
    Ao�t 2009
    Messages
    186
    D�tails du profil
    Informations personnelles :
    �ge : 60
    Localisation : France

    Informations forums :
    Inscription : Ao�t 2009
    Messages : 186
    Par d�faut
    Je pr�cise �galement que dans l'�quivalent de "TEST1.js", en "conditions r�elles", il n'y a aucun "document.write" qui soit -> Ca va peut-�tre "passer" -> Petit test de mon cot�... et je reviens !

    ----------------------------

    Bon, �a y est, voil� le "compte-rendu" :
    D�sol�, je crois que j'ai parl� un peu vite car, en fait, comme on peut le voir ci-dessous (code observ� sur le navigateur), les 2 javascripts ne sont pas imbriqu�s mais s�par�s !
    -> Vu la "dynamique" de mon programme, je ne vais pas pouvoir fonctionner comme cela... Est-ce que quelqu'un aurait une autre suggestion qui me permettrait de r�aliser une r�elle imbrication de TEST2.js dans TEST1.js ?

    PS : Voil� ce que �a me donne, en fait, cot� navigateur (Firefox), dans le <Body> :
    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
    <body>
     
    	<script type="text/javascript">
    		document.write("<H3>Hum1...</H3>");
    		document.write("<script type='text/javascript' src='TEST2.js'></sc"+"ript>");
    	</script>
     
    	<h3>Hum1...</h3>
     
    	<script src="TEST2.js" type="text/javascript">
    		document.write("<H3>Hum2...</H3>");
    	</script>
     
    	<h3>Hum2...</h3>
     
    </body>
    et voil� ce que j'aimerais obtenir :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <body>
     
    	<script type="text/javascript">
    		document.write("<H3>Hum1...</H3>");
    		document.write("<H3>Hum2...</H3>");
    	</script>
     
    	<h3>Hum1...</h3>
    	<h3>Hum2...</h3>
     
    </body>

Discussions similaires

  1. Probl�me d'appel d'un script javascript
    Par Jiraiya42 dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 03/11/2006, 19h59
  2. Appel d'un script au moyen de Javascript
    Par chris78 dans le forum G�n�ral JavaScript
    R�ponses: 5
    Dernier message: 05/05/2006, 09h57
  3. R�ponses: 5
    Dernier message: 19/04/2006, 22h17
  4. R�ponses: 2
    Dernier message: 03/04/2006, 18h38
  5. Appel sous script
    Par calimero642 dans le forum Langage
    R�ponses: 26
    Dernier message: 21/03/2006, 17h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo