Gunnar Bittersmann: Button ändern

Beitrag lesen

Hello out there!

Wie kann ich das aber in meine ausgelagerte Script-Datei übernehmen?

Indem du den Inhalt des 'script'-Elements in eine Datei 'foo.js' schreibst und diese referenzierst:
<script type="text/javascript" scr="foo.js"></script>

Ich habe, wenn ich es richtig sehe, keinen Funktionsnamen, den ich aufrufen könnte

Brauchst du auch nicht.

Der Code wird sofort ausgeführt. Deshalb kannst du ja nicht einfach sofort 'document.getElementById("foo")' aufrufen, bevor dieses Objekt "foo" existiert, sondern erst dann, wenn das HTML-Dokument komplett (also insb. das Element mit der ID "foo") geladen ist: 'window.onload'.

Dann erst wird diese anonyme(!) Funktion ausgeführt. Um zu deiner Frage zurückzukommen: Diese Funktion (und auch die Funktionen, die bei 'document.getElementById("foo").onmouseover' bzw. 'document.getElementById("foo").onmouseout' ausgeführt werden) bräuchte(n) keinen Namen; könnte(n) aber auch einen bekommen, das sähe dann so aus:

window.onload = init;  
  
function init()  
{  
  document.getElementById("foo").onmouseover = initFooOnmouseover;  
  document.getElementById("foo").onmouseout = initFooOnmouseout;  
}  
  
function initFooOnmouseover()  
{  
  this.src = ".....1";  
}  
  
function initFooOnmouseout()  
{  
      this.src = ".....2";  
};

See ya up the road,
Gunnar

--
„Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)