Aufklappende Menüleiste III

msmopic

Mitglied
Ich möchte nun, dass sich in der jeweils markierten Zelle der Hintergrund farblich ändert. Ich habe da so eine Idee, die natürlich wie immer nicht funktioniert (siehe rot markierten Code).

Code:
  function show(divid)
     {//d=document;
  	d.getElementById(divid).style.display="none";
  	//d.getElementById("cat1").style.display="none";
  	//d.getElementById("cat2").style.display="none";
  	d.getElementById(divid).style.display="inline";
     }
  
     function retreat(divid)
     {d.getElementById(divid).style.display="none";
     }
  
     function set_background (test)
     {d.getElementById(test).background-color="red";
     }

HTML:
  <table border="1" width="40%" bgcolor="#111111" style="float:left">
   <td onMouseOver="show('cat1')" onMouseOut="retreat('cat1')" id="test">
    <a href="#" onMouseOver="show('cat1')" >Category 1</a><br>
    <div id="cat1" style="display:none" >
    <a href="http://www.emp.de">EMP</a><br>
    <a href="http://www.emp.de">EMP</a><br>
    </div>
   </td>
   </table>

Oder gibt es über die Styles vielleicht eine Möglichkeit? -->

Code:
  <style type="text/css">
  < a:link { font-weight:bold; text-decoration:none; color:white}
    a:hover { font-weight:bold; text-decoration:none; color:white}
    a { text-decoration:none; color:white}
    td {background-color:#F39966}
  -->
    </style>

Vielleicht gibt es ja über diesen Weg eine Lösung, z.B. über td:hover (habe es zwar versucht, aber vielleicht weiss ja von Euch jemand die Lösung).
 
td:hover geht...allerdings noch nicht im IE

Der Fehler in der roten Zeile:
Wie bei "display" muss vor dem zu ändernden Attribut(background-color) das Obkekt(style) notiert werden, dem das zu ändernde Attribut zugehörig ist.
Eine weitere Eigenheit ist zu beachten bei "background-color":

style-Eigenschaften, welche aus mehreren, durch Bindestriche getrennten Wörtern/Silben bestehen, müssen in JS anders notiert werden.
Der(die) Bindestrich(e) entfallen, dafür werden die ersten Buchstaben nach den Bndestrichen gross geschrieben.
Aus background-color wird somit in JS backgroundColor

Summa Summarum:
Code:
d.getElementById(test).style.backgroundColor="red";
 

Neue Beiträge

Zurück