Avatar billede krydset Nybegynder
29. juni 2004 - 13:32 Der er 5 kommentarer og
1 løsning

Tabel farve skift

Hejsa, jeg ved det har været oppe en masse gange, men kan simpelt hen ikke finde en kodestump der får en tabel til at skifte farve. Nogen der lige gider at smide et lille kode eks her.

//Krydset
Avatar billede dennismp Nybegynder
29. juni 2004 - 14:03 #1
$farver = array('red','blue');
$i=0;
while(..) {
  $farve = $farver[++$i % 2];
  print "<td bgcolor=\"$farve\"><td>..</td></tr>\n";
}
Avatar billede dennismp Nybegynder
29. juni 2004 - 14:12 #2
Tricket i koden er modulus (%) .. som er resten af en heltalsdivision (dvs vi må ikke bruge kommatal!)

fx.

1 / 2 giver jo 0, og en restværdi på 1.
2 / 2 giver jo 1, her er restværdien så 0
3 / 2 giver jo 1, her er restværdien så 1
4 / 2 giver jo 2, her er restværdien så 0
5 / 2 giver jo 2, her er restværdien så 1

Som du kan se, bliver restværdien 0,1,0,1,0,1 ..  Og det passer jo fint til at hente farverne ud med (da $farver[0] giver red, og $farver[1] giver blue).

Håber det forklarer hvorfor det virker - så er det måske også lidt nemmere at huske :)
Avatar billede krydset Nybegynder
29. juni 2004 - 14:18 #3
takker det var det med % jeg ikke kunne huske :-P

Ligger du et svar ?
Avatar billede dennismp Nybegynder
29. juni 2004 - 14:26 #4
joda.

Det smarte er jo, at du jo kan lave 3 farver ret nemt. Så skifter du bare 2-tallet med 3 og putter en ekstra elemenet i $farver..

Faktisk kunne du være fræk, så du ændre:
$farve = $farver[++$i % 2];
til
$farve = $farver[++$i % count($farver)];

så skal du bare smide alle de farver i du har lyst til i $farver - og så burde den vise dem een efter een og starte forfra når den er færdig.. Men ok, det bliver nok mere forvirrende visuelt end nødvendigt :)
Avatar billede krydset Nybegynder
29. juni 2004 - 14:26 #5
hehe ja det tror jeg på :-P
Takker endnu en gang
Avatar billede thorus Nybegynder
29. juni 2004 - 14:42 #6
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