Hallo,
Ich möchte in einer gesamten Zeile mit mehreren TD´s den Hintergrund mit Javascript ändern. Dazu habe ich folgendes Script geschrieben:
TestTest2usw…
Leider sind die Variablen ja dann undefiniert, was ja auch klar ist. Weiss jemand eine Lösung für das Problem?
Vielen Dank
Hi, wie du selbst schon festgestellt hast, funktioniert die Ansprache der Tabellenzellen über den Namen so einfach nicht. Da sich deine Tabellenzellen irgendwo im im dokumentbaum befinden wird bei der ansprache eins.bgColor, die eins als Variable gewertet. Da diese aber bei dir vermutlich nicht vorhanden ist, gibt es eine Fehlermeldung.
Willst du weiter deine Bezeichnungen für eindeutige Tabellenzellen verwenden, bietet sich die Vergabe von Ids an, diese können dann - je nach Browser - als Element angesprochen und verändert werden. Anbei dein Beispiel leicht modifiziert mit einer Funktion, die für ein eindeutiges element (Tabellenzelle) die hintergrundfarbe ändert. So kannst du die Funktion auch benutzen, wenn du z.B. einen MouseOut Event Handler verwenden willst. Gruß DP
Netscape 4.7 Feind - Tabellenzellenfarbe ändern in modernen Browsern
<!–
docall=document.all;
docget=document.getElementById;
function faerben(elem, farbe)
{
if(docall)
{document.all[elem].style.backgroundColor=farbe;}
else if(docget)
{document.getElementById(elem).style.backgroundColor=farbe;}
}
–>
Test
Test2
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hi, wie du selbst schon festgestellt hast, funktioniert die
Ansprache der Tabellenzellen über den Namen so einfach nicht.
Da sich deine Tabellenzellen irgendwo im im dokumentbaum
befinden wird bei der ansprache eins.bgColor, die eins als
Variable gewertet. Da diese aber bei dir vermutlich nicht
vorhanden ist, gibt es eine Fehlermeldung.
Willst du weiter deine Bezeichnungen für eindeutige
Tabellenzellen verwenden, bietet sich die Vergabe von Ids an,
diese können dann - je nach Browser - als Element angesprochen
und verändert werden. Anbei dein Beispiel leicht modifiziert
mit einer Funktion, die für ein eindeutiges element
(Tabellenzelle) die hintergrundfarbe ändert. So kannst du die
Funktion auch benutzen, wenn du z.B. einen MouseOut Event
Handler verwenden willst. Gruß DP
Netscape 4.7 Feind -
Tabellenzellenfarbe ändern in modernen Browsern
<!–
docall=document.all;
docget=document.getElementById;
function faerben(elem, farbe)
{
if(docall)
{document.all[elem].style.backgroundColor=farbe;}
else if(docget)
{document.getElementById(elem).style.backgroundColor=farbe;}
}
–>
Test
Test2
Hallo,
vielen Dank für Dein Script. Funktioniert prima. Du hast mir echt weitergeholfen
Gruß
Adrian