Seite 1 von 1

JavaScript dynamisch mit JavaScript generieren

Verfasst: 01.12.2003, 16:16
von Halli
Ich brauche Eure Hilfe bei der Integration des JavaScript Codes eines neuen Sponsors in meine Seiten. Normalerweise würde der Code so aussehen:

Code: Alles auswählen

<html><head>
<script Language="JavaScript">
<!--
Loaded = false;
BannerType = "pop";
PopSize = "large";
//-->
</script>
<SCRIPT LANGUAGE='Javascript' SRC=http&#58;//www.server.com/jsmaster></SCRIPT>
<script Language="JavaScript">
<!--
if &#40;Loaded&#41; ShowAd&#40;&#41;;
//-->
</script>
<script language="javascript" src="startscript.js"></script>
</head>
<body>
<h2>Hier geht's richtig los!</h2>
</body></html>
Das funktioniert auch prima, hat aber den Nachteil, dass ich den Code in alle meine Seiten direkt hineinschreiben muss. Ich will daher versuchen, den neuen Code am Anfang meines Startscriptes zu integrieren, das ja sowieso schon in einer externen Datei liegt.
--> Ich möchte nur die externe Datei ändern.

Probleme bereitet mir nun der Code, der auf dem externen Server liegt und von dort aus mit eingebunden werden soll. Ich hab bisher versucht, den zusätzlichen Code in mein Startscript so zu integrieren:

Code: Alles auswählen

document.write&#40;"<script Language='JavaScript'>\n
Loaded = false;\n
BannerType = 'pop';\n
PopSize = 'large';\n
<\/script>"&#41;
document.write&#40;"<SCRIPT LANGUAGE='Javascript' SRC=http&#58;\/\/www.server.com\/jsmaster><\/SCRIPT>"&#41;;
document.write&#40;"<script Language='JavaScript'>\n
if &#40;Loaded&#41; ShowAd&#40;&#41;;\n
<\/script>"&#41;;

function myscript &#40;&#41; &#123;
// Hier steht der Code meines Startscriptes
&#125;
Aber leider klappt es so nicht. Offensichtlich sehe ich den Wald vor lauter Bäumen nicht oder denke um eine Ecke zuviel/zuwenig. Wer kann mir einen Wegweiser vor die Nase halten ....

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 01.12.2003, 17:20
von Noki
ich denke nicht das javascript die rekursive ausführung von code erlaubt. ich kann mir nicht vorstellen das das so funktionieren wird. probier es lieber mal mit einem iframe.

Verfasst: 02.12.2003, 21:16
von auer
Das ist in gewisser Weise möglich, es könnte für deine Zwecke jedoch noch zu wenig sein. Beispiel: Kopiere dir den folgenden Inhalt nach index.html

Code: Alles auswählen

<html><head>
<script src="script.js" type="text/javascript"> </script>
<script>alert&#40;'Anschliessend'&#41;;</script>
</head>
<body>Ich bin index.html</body></html>
Diesen in script.js

Code: Alles auswählen

alert&#40;"Zuvor"&#41;;
document.write&#40;"<script type='text/javascript' src='extern.js'></script>"&#41;;
alert&#40;"Danach"&#41;;
Diesen nach extern.js

Code: Alles auswählen

alert&#40;'Ich bin extern'&#41;;
Du siehst, daß der Inhalt von extern.js erst nach dem 'Danach' ausgeführt wird. Das heißt, zunächst wird der ganze Scriptblock in der script.js ausgeführt, dieser schreibt den Aufrufcode für extern.js. Erst anschließend wird der soeben neu eingefügte Code interpretiert und ausgeführt, dann folgt der Nachklapp 'Danach'.

Das Problem dabei ist: Ist der zusätzliche Code völlig unabhängig, dürfte es klappen. Mußt Du eigenen Code nach dem eingefügten Code ausführen und dabei auf den eingefügten Code bezug nehmen, könnte es Probleme geben - da dieser erst nach der vollständigen Abarbeitung deines bisherigen Startscripts ausgeführt wird.

[Edit] Grade nochmals mit Opera getestet - da werden die Meldungen in einer anderen Reihenfolge ausgegeben.

----------------
Gruß, Jürgen Auer