[JavaScript / DOM] createElement('script') . distant ?

WRInaute occasionnel
Alors...

J'ai une fonction en JavaScript, qui est lancée lors du chargement de ma page (body onLoad), qui écrit en DOM des morceaux d'HTML aux endroits voulus.

J'aimerais que cette fonction puisse utiliser la sortie d'un autre script JS (sur lequel je n'ai pas la main, comme un tag d'affiliation) pour la placer dans un élément.

Par exemple, j'ai un div id="zoneCible" dans lequel je veux afficher le résultat du script http://example.org/js/zonecible.js .
En HTML "simple", je ferais
Code:
<div id="zoneCible"><script type="text/javascript" src="http://example.org/js/zonecible.js"></script></div>

En DOM, je me retrouve avec :
Code:
zoneCible = document.getElementById('zoneCible');
ban = document.createElement('script');
ban.type = "text/javascript";
ban.src = "http://example.org/js/zonecible.js";

Et c'est là que ca se complique. L'élement est bien créé, ses attributs ont les bonnes valeurs, bref, le tag d'origine est recréé (merci la DevToolbar de Firefox et son génial "View generated source").
Par contre, je n'arrive pas à afficher son output dans ma ZoneCible... (rappelez-vous, c'était l'idée ;))

Quelques pistes essayées, sans succès :
Code:
scrapper.innerHTML = eval(ban) => affiche [object HTMLScriptElement]
scrapper.apppendChild(ban) => page tourne en boucle

des idées ? une solution ?
 
WRInaute impliqué
si c'était pour moi j'utiliserais une requête ajax vers un script php qui rappatrie le js distant avec curl ou file_get_contents.

comme ça j'aurais la main sur le résultat avant de le renvoyer au client.
 
WRInaute occasionnel
ca peut être une solution, en effet
mais je trouve un peu dommage de faire un appel serveur pour ne servir qu'un script client (évidemment, je n'ai pas "le droit" de modifier le js...)

merci quand même pour l'idée
 
Discussions similaires
Haut