pit.possum: mehrere Frames ansteuern... HELP! ;)

hallo allerseits!
folgendes:
meine website öffnet sich in einem zentrierten frame.
jetzt würde ich gerne den user die hintergrundfarbe der 4 "randframes" (oben und unten, links, rechts) bestimmen lassen.
ich weiss, dass ich dazu javascript benötige, komme aber nicht weiter. hier mal das frameset:

[...]
<frameset rows="*,400,*" cols="*" framespacing="0" frameborder="NO" border="0">
  <frame src="grau_oben.htm" name="top" scrolling="NO" noresize >
  <frameset rows="*" cols="*,600,*" framespacing="0" frameborder="NO" border="0">
    <frame src="grau_links.htm" name="left" scrolling="NO" noresize>
    <frame src="start.htm" name="mainFrame">
    <frame src="grau_rechts.htm" name="right">
  </frameset>
  <frame src="grau_unten.htm" name="bottom" scrolling="NO" noresize>
</frameset>
[...]

vielleicht liegt da ja schon der fehler...

ich habe testweise folgendes versucht:
[...]
<script>
function wechsel(url1, fr1, url2, fr2, url3, fr3, url4, fr4)
{
parent.frames[fr1].location.href=url1;
parent.frames[fr2].location.href=url2;
parent.frames[fr3].location.href=url3;
parent.frames[fr4].location.href=url4;
}
</script>
[...]

das script wird aufgerufen durch bespielsweise:
[...]
<a href="#" onClick="wechsel('grau_oben.htm', 'top', 'grau_rechts.htm', 'right', 'grau_unten', 'bottom', 'grau_links', 'left')"><img src="arrow.gif" width="10" height="10" border="0"></a>grau<br>
<a href="#" onClick="wechsel('blau_oben.htm', 'top', 'blau_rechts.htm', 'right', 'blau_unten', 'bottom', 'blau_links', 'left')"><img src="arrow.gif" width="10" height="10" border="0"></a>blau<br>
<a href="#" onClick="wechsel('orange_oben.htm', 'top', 'orange_rechts.htm', 'right', 'orange_unten', 'bottom', 'orange_links', 'left')"><img src="arrow.gif" width="10" height="10" border="0"></a>orange
[...]

ist der ansatz, einfach seiten mit verschiedenen hintergrundfarben in die frames zu laden ok, oder kann ich auch direkt die bgcolor eines frames bestimmen?
irgendwie gibt das bei mir nur chaos, hat wohl was mit ".parent" zu tun. ich hab versucht mih da durchzukauen, ich steh aber inzwischen echt aufm schlauch...

oder kann ich das ganze auch komplett anders lösen?

  1. vielleicht indem du nicht die Seite wechselst sondern eben nur die Farbe:

    parent.frames[fr1].document.body.bgColor = "#000000";

    aber: das document.body objekt ist nicht in allen Browsern verfügbar.
    (zB NS 4)

    1. hi,

      parent.frames[fr1].document.body.bgColor = "#000000";

      aber: das document.body objekt ist nicht in allen Browsern verfügbar.
      (zB NS 4)

      versuche es mal mit document.bgColor = "..."
      Das verstehen alle.

      Gruesse Joachim

  2. hi,

    oder kann ich das ganze auch komplett anders lösen?

    bitte reduziere Deinen Code auf Wesentliches.

    Du brauchst
    1. eine Framereferenz
    2. eine Methode

    zusammensieht das so aus:

    function farbe (farbe) {
      top.FRAMNAME1.document.bgColor = farbe;
      top.FRAMNAME2.document.bgColor = farbe;
    }

    Aufruf:

    farbe("red");

    hth + Gruss  Joachim