Variablen
cem
- javascript
0 derletztekick0 Ashura
function farbe_an()
{
ziel="9";
var i=1;
farbe_1="#ffffff";
for(i=1;i<=ziel;i++)
{
document.all.td+i+.style.color ="+ farbe_1"
}
}
Was mache ich hier falsch?
ich möchte nicht für 9 zellen diese funktion schreiben. habe versucht, es zu vereinfachen, indem ich die zellen td1 bis td9 genannt habe. diese wollte ich mit der forschleife verfolständigen.
geht das überhaubt?
Hallo cem,
Was mache ich hier falsch?
Überleg mal, was das:
document.all.td+i+.style.color ="+ farbe_1"
machen soll und was es tatsächlich macht.
geht das überhaubt?
So zumindest nicht...
Wäre es nicht einfacher per CSS allen TD's die Farbe zu zuweisen?
Mit freundlichem Gruß
Micha
Hallo cem.
function farbe_an()
{ziel="9";
var i=1;
farbe_1="#ffffff";for(i=1;i<=ziel;i++)
{
document.all.td+i+.style.color ="+ farbe_1"}
}Was mache ich hier falsch?
Du verwendest hier 1. ein völlig veraltetes Objekt (all) und 2. versuchst du hier mitten in einer Objektnotation eine Addition bzw. eine Stringverknüpfung durchzuführen.
Zudem weist du der Color-Eigenschaft *immer* den Wert „+farbe_1“ zu.
Außerdem soll die Schleife so lange durchlaufen werden, wie die Variable i kleinergleich der Zeichenkette „9“ ist. (Davon, dass die Erstzuweisung von i mit dem Wert 1 außerhalb der for-Schleife überflüssig ist ganz zu schweigen.)
Das kann alles nicht funktionieren.
Du solltest dir mit Hilfe der üblichen Verdächtigen (http://de.selfhtml.org/javascript/objekte/document.htm#get_elements_by_tag_name@title=getElementsByTagName, http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=getElementById und http://de.selfhtml.org/javascript/objekte/document.htm#get_elements_by_name@title=getElementsByName) Zugriff auf die jeweilige Tabelle verschaffen und hier mit Hilfe der überaus nützlichen vordefinierten Methoden http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#table@title=rows und http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#tr@title=cells agieren.
Für die Wertzuweisung an die color-Eigenschaft solltest du die Anführungszeichen und das „+“ entfernen. Schließlich möchtest du der color-Eigenschaft den Wert der Variable farbe_1 zuweisen.
Allgemein solltest du dich noch eimal etwas ausgiebiger mit den <http://de.selfhtml.org/javascript/intro.htm@title=Grundlagen von JavaScript> befassen.
Einen schönen Donnerstag noch.
Gruß, Ashura