js-Dateien nachladen
Tanja
- javascript
Hallo,
wie einzelne Skripte nachträglich geladen werden können, ist mir bekannt. Also
document.createElement("script");//src setzen... und schließlich einbinden
document.getElementsByTagName("body")[0].appendChild()
Das klappt auch einwandfrei.
Jetzt habe ich eine schwierigere Herausforderung: in einem String sind mehrere vollständige Script Tags, die ebenfalls nachgeladen werden.
Meine erste Idee war jetzt, einen createElement("div") und in diesen DIV mit .innerHTML den String einzuschleußen.
Auf diese Weise landen die <script...> Tags zwar im HTML Code, jedoch wird keines der js-Dateien geladen :-(
Eine Alternative wäre wohl, den String zu parsen.
Gibt es eine bessere Lösung, unter der Voraussetzung, dass an dem String nichts geändert werden kann, also nicht jedes <script> einzeln per createElement+appendChild hinzugefügt werden kann, sondern alle auf einmal - falls möglich?
Vielen Dank für Rat
hi,
Eine Alternative wäre wohl, den String zu parsen.
??? InnerHTML parst doch den String ...;
mfg
tami
??? InnerHTML parst doch den String ...;
Weiss jetzt nicht, wie der Beitrag weiterhilft oder zu bedeuten hat.
Oder meinst Du innerText (statt innerHTML)?
hi,
??? InnerHTML parst doch den String ...;
Weiss jetzt nicht, wie der Beitrag weiterhilft oder zu bedeuten hat.
Oder meinst Du innerText (statt innerHTML)?
Nee, weil du was von "parsen" schriebst:
"Removes all of element's descendants, parses the content string and assigns the resulting nodes as descendants of the element."
https://developer.mozilla.org/en-US/docs/DOM/element.innerHTML
mfg
tami
hi,
wenn ich google finde ich,
a) dass das mit script-tags und innerHTML nicht geht und b
b) dass es mit eval() gehen könnte.
habe aber keine zeit mehr, das weiter zu forschen ...;
https://www.google.de/search?q=innerhtml+script+tag+not+parsed
mfg
tami
Hallo Tanja,
... in einem String sind mehrere vollständige Script Tags, die ebenfalls nachgeladen werden.
wie habe ich mir das vorzustellen? Hast du mal ein Beispiel?
Aus dem Bauch heraus würde ich vorschlagen: alles entfernen, was nicht passt und den Rest durch eval schicken.
Gruß, Jürgen