Axel Richter: getElementById(ID)

Beitrag lesen

Hallo,

nun ich habe schon wieder ein Problem mit meinen <tr>'s.
Und zwar folgendes:
Ich möchte die class des <tr>'s ändern, je nachdem welche Aktion mit der Maus ausgeführt wurde.

HTML-Code:
<tr class="test1" onmouseover="ActNorm(this,'on'); return false;" onmouseout="ActNorm(this,'off'); return false;" onclick="ActNorm(this,'click'); return false;">

Der Bezeichner this bezieht sich hier auf das TR-Element.

</tr>

JAVASCRIPT Code:
function ActNorm(id, type){

^mit this übergibst Du in der Variablen id ein TR-Objekt.

if(type == 'click'){
     document.getElementById(id).className = 'test3';

^hier wird eine ID erwartet. In id steht aber ein TR-Objekt.

}

HTML-Code:
<tr class="test1" onmouseover="ActNorm(this,'on'); return false;" onmouseout="ActNorm(this,'off'); return false;" onclick="ActNorm(this,'click'); return false;">
</tr>

JAVASCRIPT Code:
function ActNorm(obj, type){
  if(type == 'click'){
     obj.className = 'test3';
    }
  else if(type == 'off' && obj.className == 'test3'){
     obj.className = 'test3';
  }
  else
  {
  obj.className = 'test1'
  }

}

Statt die Klasse zu ändern, würde ich allerdings lieber die einzelnen STYLE-Eigenschaften wie gewünscht verändern:

obj.style.backgroundColor = ... ; usw.

viele Grüße

Axel