Hallo Stefan.
Über diesen Link, wird ein Bereich der Homepage sichtbar (über Style-Klassen). Und bevor dieser Bereich sichtbar wird, soll er auf die externe Seite zugreifen. Davor aber nicht.
Gehe ich recht in der Annahme, dass das Einblenden besagten Bereiches über das externe Script vom anderen Server geregelt wird?
In jedem Falle solltest du erst beim Laden des Dokumentes den Bereich ausblenden, da sonst Clients ohne JS nichts davon zu sehen bekommen.
Zudem solltest du den Link wohl eher gegen einen Button austauschen. Oder wird im Falle des Nichtvorhandenseins von JS wirklich eine Ressource aufgerufen? Merke: sollen einfach nur Aktionen ausgeführt werden, sind Buttons und bei tatsächlichen Referenzierungen Links die erste Wahl.
Im onclick-Attribut kannst du nun entweder direkt folgend Beschriebenes ausführen, oder dieses in eine Funktion auslagern.
Wird nun also auf diesen Link (bzw. Button) geklickt, so erstellst du ein script-Element, verpasst ihm die erforderlichen Attribute type und src und hängst in das head-Element ein. Dieses kannst du beispielsweise per document.getElementsByTagName('head')[0] leicht erreichen.
Wichtig ist hier lediglich, dass das Script, welches das script-Element einhängt zuerst ausgeführt wird und erst darauf folgend der eigentliche Funktionsaufruf.
Einen schönen Sonntag noch.
Gruß, Ashura
Hi Ashura,
was stimmt an dem script hier nicht? Bei Mozilla überschreibt er die Seite und läd nur das eingehängte script und läd dann ewig weiter und bei anderen browsers passiert garnichts.
DAS WIRD BEIM LINK AUFGERUFEN:
var myScript = document.createElement("script");
var myScriptType = document.createAttribute("type");
var myScriptLanguage = document.createAttribute("language");
var myScriptSrc = document.createAttribute("src");
myScriptType.nodeValue = "text/javascript";
myScriptLanguage.nodeValue = "javascript";
myScriptSrc.nodeValue = "www.???.de/...usw.";
myScript.setAttributeNode(myScriptType);
myScript.setAttributeNode(myScriptLanguage);
myScript.setAttributeNode(myScriptSrc);
var outputArea = document.getElementById("weatherBox");
outputArea.appendChild(myScript);
DAS STEHT IM BODY-TEIL IN EINER TABELLE:
<div id="weatherBox"></div>
Vielen Dank für deine Hilfe,
Stefan