BackgroundColor == "#cccccc"
NenntMichHarry
- javascript
Hallo zusammen,
ich wollte mal fragen woran es liegt, dass er dies nicht korrekt vergleichen kann:
if(document.getElementById(""+rand).style.backgroundColor == "#cccccc")
Ich hab überprüft, dass document.getElementById(""+rand) in jedem fall die hintergrundfarbe #cccccc hat.
Liegt an es der syntax ?!
lg Harry
Ok ich muss die frage umformulieren,
in Opera funktioniert diese Abfrage nämlich.
Das liegt daran weil alle andren browser mit dem Hex Code anscheinend nicht vernünftig umgehen können.
#ff0000 klappt zum beispiel im Opera
"red" dagegen in allen andren browsern.
Wie kann ich das jetzt kompatible machen ? So weit ich weiss gibt es für #cccccc keinen speziellen namen !
lg Harry
Hi,
if(document.getElementById(""+rand).style.backgroundColor == "#cccccc")
Es gibt viele verschiedene Arten, einen Color-Wert anzugeben.
Die Browser verwenden vermutlich intern immer dieselbe Variante (Geckos m.W. die rgb()-Variante) und setzen übergebene Werte anderer Formate in dieses intern benutzte Format um.
Laß Dir also
document.getElementById(""+rand).style.backgroundColor
mal ausgeben.
Außerdem: "" + rand läßt vermuten, daß rand eine Zufallszahl ist.
Damit könnte document.getElementById("" + rand) kein Element finden, da eine id niemals mit einer Ziffer beginnen darf.
cu,
Andreas
Hey, wie in meinem zweiten post schon erklärt klappt das ja in opera, nur die anderen Browser wollen anscheinend feste namen wie zb. "red" haben.
Nur gibt es leider keinen namen für meine gewünschte farbe #cccccc.
Das mit der ID ist schon richtig, sollte man nicht tun, klappt aber ;-)
Danke für die schnelle antwort ^^
Ok im IE und im Opera wird #cccccc angezeigt, im Firefox und Safari rgb(204, 204, 204). Also danach abfragen, dann klappts!
Das mit dem Auslesen, da hätte ich von selbst drauf kommen können, aber ist ja schon spät.
Danke ;-)
Lg Harry
ich wollte mal fragen woran es liegt, dass er dies nicht korrekt vergleichen kann:
if(document.getElementById(""+rand).style.backgroundColor == "#cccccc")
Ich hab überprüft, dass document.getElementById(""+rand) in jedem fall die hintergrundfarbe #cccccc hat.
Liegt an es der syntax ?!
evtl. geht grey40 oder gray40
http://www.farb-tabelle.de/en/table-of-color.htm#gray
Klaus
Liegt an es der syntax ?!
evtl. geht grey40 oder gray40
http://www.farb-tabelle.de/en/table-of-color.htm#gray
Wieso sollte es?
Du hast den Thread gelesen und weißt worum es geht?
truppi.