Mardin: Farbe ändern -- Kompatibel???

Hallo,

ich bin programmier-Anfänger und habe mir heute mal dieses Script zusammen gebastelt um die Tabellen-Hintergrundfarben beim mouseover zu ändern:

<script language="javascript">
function change(zelle_a,farbe_a,zelle_b,farbe_b)
{
document.all[zelle_a].style.backgroundColor=farbe_a
document.all[zelle_b].style.backgroundColor=farbe_b
}
</script>

<table width="160" border="1">
  <tr>
    <td width="40" id="zelle1" onMouseOver="change('zelle2','#00ff00','zelle3','#FFCC00')" onMouseOut="change('zelle3','transparent','zelle2','transparent')">test</td>
    <td width="40" id="zelle2">test</td>
    <td width="40" id="zelle3">test</td>
  </tr>
</table>

Jetzt die Frage: Wie kompatibel ist dieses Zeugs? Klappt das mit den aktuellen Browsern?
Wenn nein, wie wäre das kompatibler zu machen?

Gruß Mardin

  1. Hallo!

    ich bin programmier-Anfänger und habe mir heute mal dieses Script zusammen gebastelt um die Tabellen-Hintergrundfarben beim mouseover zu ändern:

    <script language="javascript">

    Richtiger: type="text/javascript

    function change(zelle_a,farbe_a,zelle_b,farbe_b)
    {
    document.all[zelle_a].style.backgroundColor=farbe_a
    document.all[zelle_b].style.backgroundColor=farbe_b

    Das läuft nur im MSIE, und veraltet ist das außerdem. Verwende stattdessen DOM document.getElementById.
    http://selfhtml.teamone.de/javascript/objekte/document.htm#get_element_by_id

    tschüs, jürgen

    1. Ich hab es jetzt so gemacht:

      <script type="text/javascript">
      <!--
       function farbe(zelle_a,farbe_a)
      {
       document.getElementById(zelle_a).style.backgroundColor=farbe_a;
      }
      //-->
      </script>

      <table width="160" border="1">
        <tr>
          <td width="40" id="zelle1b" onMouseOver="farbe('zelle2b','#00ff00')" onMouseOut="farbe('zelle2b','transparent')">test</td>
          <td width="40" id="zelle2b">test</td>
        </tr>
      </table>

      ist das jetzt kompatibler??

      danke Mardin

      1. Hallo!

        getElementById kennen alle modernen Browser (u.a. Mozilla1/Netscape6+, opera7)  und IE ab 5.0.

        Zur Vermeidung von Fehlermeldungen in älteren Browsern solltest Du noch abfragen, ob das Ofjekt vorhanden ist:
        if(document.getElementById) { ...

        Mein Tip:
        Browser runterladen und selber probieren!

        http://www.opera.com/download/
        http://mozilla.kairo.at/download/
        http://www.netscape.de/download/

        tschüs, jürgen