ludz
Erfahrenes Mitglied
Hallihallo...
hab ein Problem beim Markieren von Tabellenzeilen, also bei Mouseover andere Farbe, bei Mousedown Zelle markieren, bei erneutem Mousedown Markierung wieder entfernen etc. Ihr kennt das Ganze vielleicht aus phpMyAdmin.
An genau deren JavaScript-Funktion für dieses Ereignis habe ich mich auch orientiert. Es funktioniert auch soweit alles bis auf eine Sache: Wenn ich eine Zeile markiert habe, also darauf geklickt habe und später wieder über diese Zeile mit der Maus fahre, dann wird die Markierung einfach wieder entfernt. Das soll aber gerade nicht sein!
Hier mal mein Code:
die Tabellenzeilen sehen dann so aus:
weiß jmd. wo der Fehler liegen könnte?
hab ein Problem beim Markieren von Tabellenzeilen, also bei Mouseover andere Farbe, bei Mousedown Zelle markieren, bei erneutem Mousedown Markierung wieder entfernen etc. Ihr kennt das Ganze vielleicht aus phpMyAdmin.
An genau deren JavaScript-Funktion für dieses Ereignis habe ich mich auch orientiert. Es funktioniert auch soweit alles bis auf eine Sache: Wenn ich eine Zeile markiert habe, also darauf geklickt habe und später wieder über diese Zeile mit der Maus fahre, dann wird die Markierung einfach wieder entfernt. Das soll aber gerade nicht sein!
Hier mal mein Code:
PHP:
<script language="JavaScript">
<!--
var zeile_markiert=new Array;
function markiere(zeile,nr,wie) {
var farbe_markiert='#FFCC99';
var farbe_hover='#EFEFEF';
var farbe_normal='#FFFFFF';
jetzt_farbe=zeile.style.backgroundColor;
if(wie=='markiert') {
if(zeile_markiert[nr]) {
neue_farbe=farbe_normal;
zeile_markiert[nr]=null;
} else {
neue_farbe=farbe_markiert;
zeile_markiert[nr]=true;
}
} else if(wie=='hover') {
if(!zeile_markiert[nr] || zeile_markiert[nr]=='undefined') {
neue_farbe=farbe_hover;
}
} else if(wie=='normal') {
if(!zeile_markiert[nr] || zeile_markiert[nr]=='undefined') {
neue_farbe=farbe_normal;
}
}
if(neue_farbe!='') {
zeile.style.backgroundColor=neue_farbe;
}
return true;
}
//-->
</script>
die Tabellenzeilen sehen dann so aus:
PHP:
<tr onMouseover="markiere(this,0,'hover')" onMouseout="markiere(this,0,'normal')" onMousedown="markiere(this,0,'markiert')">
<tr onMouseover="markiere(this,1,'hover')" onMouseout="markiere(this,1,'normal')" onMousedown="markiere(this,1,'markiert')">
... usw.
weiß jmd. wo der Fehler liegen könnte?