Hallo,
ich möchte Javascript-Code nachträglich in eine Webseite einfügen. (Konkret geht es darum, je nach tatsächlich verfügbarem Platz den besten Anzeigeort zu wählen. nb: Ich habe keine Möglichkeit, den einzufügenden Code zu ändern.)
Dazu erstelle ich ein <script>-Element mittels createElement(), lasse Code in das Element einfügen, der seinerseits unter anderem document.write() enthält, und klebe das Resultat mittels insertBefore() an die gewünschte Position.
Das Problem:
Sobald das neue Element das enthaltene document.write() ausführt, wird die Seite komplett gelöscht und durch den von document.write() ausgegebenen Inhalt ersetzt.
Ich hätte natürlich stattdessen gerne, dass der ausgebene Inhalt sich dort in die bestehende Seite einfügt, wo ich das <script>-Element hingesetzt habe.
var e = basis.create('script', {type: "text/javascript"}, false, 'alert("Hallo");document.write("Hallo 2"); alert("Hallo 3");');
alert("insertBefore()");
basis.insertBefore(e, nachbar);
(Der Code nutzt DOMAssistant, das tut aber nix zur Sache, mit direkten createElement()&Co.-Aufrufen passiert exakt das Gleiche.)
Ablauf ist wie folgt: Es erscheint 'insertBefore()', dann 'Hallo', dann wird der Seiteninhalt durch 'Hallo 2' ersetzt, abschließend erscheint 'Hallo 3'.
Kennt jemand eine Möglichkeit, Javascript-Code, der seinerseits Text in die Seite schreibt, einzufügen, ohne, dass die Seite gelöscht wird?
Danke.