Avatar billede dennism Nybegynder
19. oktober 2006 - 12:46 Der er 6 kommentarer og
1 løsning

JavaScript: test baggrundsfarve?

Hvordan tester jeg, om et element f.eks. har farven #ffffff?

Jeg har prøvet med:
if (document.getElementById("id"+num).style.backgroundColor!="#ffffff") {

Men det virker i hvert fald ikke firefox.
Når jeg laver en alert med:
alert(document.getElementById("id"+num).style.backgroundColor);
Skriver den:
rgb(225, 225, 225)
Avatar billede olebole Juniormester
19. oktober 2006 - 12:52 #1
<ole>

Sådan er det med FF - den returnerer altid farver i RGB. Du må lave en dobbelt betingelse, der spørger, om farven er enten '#ffffff' eller 'rgb(255, 255, 255)'  :o|

/mvh
</bole>
Avatar billede dennism Nybegynder
19. oktober 2006 - 12:57 #2
Øv :(
Det kan altså ikke gøre anderledes?
Avatar billede dennism Nybegynder
19. oktober 2006 - 12:58 #3
Men du må gerne smide et svar her :)

Måske du også kan hjælpe her:
http://www.eksperten.dk/spm/739531
Avatar billede dennism Nybegynder
19. oktober 2006 - 13:06 #4
Synes ikke jeg kan få det til at virke:

$data .= '<script language="javascript">
                        function mouseOut(num) {
                            alert(document.getElementById("id"+num).style.backgroundColor);
                            if (document.getElementById("id"+num).style.backgroundColor!="rgb(224, 224, 224)") {
                                document.getElementById("id"+num).style.backgroundColor="#ffffff";
                                document.getElementById("email"+num).style.backgroundColor="#ffffff";
                                document.getElementById("group"+num).style.backgroundColor="#ffffff";
                                document.getElementById("functions"+num).style.backgroundColor="#ffffff";
                            }
                        }
            </script>';

Overstående er den kode der bliver returneret til en echo i mit PHP.
Selvom alerten skriver: rgb(224, 224, 224)
Så er betingelsen altid sand :(

Kan du gennemskue hvorfor?
Avatar billede olebole Juniormester
19. oktober 2006 - 13:35 #5
rgb(224,224,224) - uden mellemrum ... selvom det ser ud, somom de er der i alert'en  :)
Avatar billede dennism Nybegynder
19. oktober 2006 - 14:02 #6
Det var ikke derfor - der skal være mellemrum. Mig der havde lavet en anden tåbelig fejl. Vil du have point?
Avatar billede dennism Nybegynder
26. november 2006 - 18:18 #7
Svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester