Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML] Funkcja zwracająca wartości naprzemian
Forum PHP.pl > Forum > Gotowe rozwiązania > Szukam
Efan
Potrzebuję funkcji która zwraca naprzemian wartości

Generalnie chodzi o:
  1. <table background="Wartosc1"><tr><td></td></tr></table>
  2. <table background="Wartosc2"><tr><td></td></tr></table>
  3. <table background="Wartosc1"><tr><td></td></tr></table>
  4. <table background="Wartosc2"><tr><td></td></tr></table>
  5. ...
vokiel
W pętli robisz sobie licznik, i sprawdzasz czy reszta z dzielenia (modulo) przez 2 jest równa zero, jeśli tak to background przyjmuje wartość1 a jeśli nie to wartość 2.
Efan
faktycznie myślałem o czymś takim,ale miałem nadzieję,że jest prostsza metoda!
scanner
Owszem.
Przed pętlą ustawiasz określoną zmienną na false, wewnątrz pętli wykonujesz:
  1. $bFoo = !$bFoo;

I tło uzależniasz od true/false.
IMHO powinno to być nieco szybsze, tym bardziej, ze nie każda pętla musi wymagać dodatkowych liczników.
Quantum
to ja może z innej beczki smile.gif

  1. tr:nth-child(even){background:#CCC;}
  2. tr:nth-child(odd){background:#FFF;}
  3. td{width:500px;padding:10px;}


  1. <tr><td>1</td></tr>
  2. <tr><td>2</td></tr>
  3. <tr><td>3</td></tr>
  4. <tr><td>4</td></tr>
  5. <tr><td>5</td></tr>
  6. <tr><td>6</td></tr>
  7. <tr><td>7</td></tr>
  8. <tr><td>8</td></tr>
  9. <tr><td>9</td></tr>
  10. <tr><td>10</td></tr>
Gryf
hmm... @up no tak tylko czy nth-child(even) i nth-child(odd)
są poprawnie interpretowane przez wszystkie przeglądarki?
Quantum
to zostało wprowadzone w 2001 roku, wszystkie przeglądarki interpretują dobrze oprócz ie6-7, w 8 jest już ok.
phpion
W Kohana jest fajny helper text::alternate. Jego kod sprowadza się do:
  1. class text {
  2. /**
  3. * Alternates between two or more strings.
  4. *
  5. * @param string strings to alternate between
  6. * @return string
  7. */
  8. public static function alternate()
  9. {
  10. static $i;
  11.  
  12. if (func_num_args() === 0)
  13. {
  14. $i = 0;
  15. return '';
  16. }
  17.  
  18. $args = func_get_args();
  19. return $args[($i++ % count($args))];
  20. }
  21. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.