Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][js]Podświetlenie wiersza tabeli
Forum PHP.pl > Forum > Przedszkole
piotrooo89
Mam taki malutki problemik...

Mam taki oto kodzik:

  1. <?php
  2. echo '<table border="0" class="wyswietl">
  3. <tr class="naglowek">
  4. <td class="naglowek"><h3>Numer</h3></td>
  5. <td class="naglowek"><h3>Nazwa</h3></td>
  6. </tr>';
  7.  
  8. while($linia=mysql_fetch_array($sql))
  9. {
  10. echo '<tr onMouseover="this.bgColor='black'" onMouseout="this.bgColor='white'">
  11. <td class="reszta">' . $linia['nr_'] . '</td>
  12. <td class="reszta">' . $linia['nazwa'] . '</td>
  13. </tr>';
  14. }
  15. echo '</table>';
  16. ?>


i ta funkcja w javie nie chce mi sie odpalić. :/ Chodzi o podświetlanie wiersza nad którym jest kursor.

Jestem kompletnie zielowny w Javie Script.
Dzieki!
erix
Cytat
  1. <?php
  2. echo '<tr onMouseover="this.bgColor='black'" onMouseout="this.bgColor='white">
  3. ?>

Podpowiem: pojedyncze apostrofy w środku echo" title="Zobacz w manualu PHP" target="_manual.
piotrooo89
zrobiłem tak:

  1. <?php
  2. echo <tr onMouseover=this.bgColor="#00FFFF" onMouseout=this.bgColor="white">
  3. ?>


i hula thx
foxik000000
Pozwolicie, że się podłącze do tematu smile.gif
Korzystam z tego samego kodu co kolega piotrooo89.

Jednak mam pewien problem.
Chciałbym, aby wiersz zmieniał swój kolor tylko po najechaniu myszką, a po odsunięciu myszki wiersz powrócić do domyślnego koloru zdefiniowanego na początku tabeli.

Po zostawieniu wyłącznie
  1. <?php
  2. <tr onMouseover=this.bgColor="#00FFFF">
  3. ?>

po odsunięciu kolor wiersza nie wraca do domyślnego :/

Co w zrobić w tej sytuacji?
zegarek84
powinno zadziałać - umieść to w head... testowałem to jako skryptozakładkę na tym forum i działało - ale do skryptu musiałem niewiele dopisać to możem literówkę walnął ale raczej jest dobrze na 99%

zmień tylko:
document.onload=zmien(id_Twojej_tabeli,kolor_wiersza);
na id Twojej tabeli i podaj w tym kolor podświetlenia winksmiley.jpg
Kod
<script type="text/javascript">
//<![CDATA[


var color=[];function zmien(id_tab,color_tab){a=document.getElementById(id_tab).getElementsByTagName('tr');i=0;while(a[i]){a[i].onmouseout=function(){this.bgColor=color[this]};a[i].onmouseover=function(){color[this]=this.bgColor;this.bgColor=color_tab};++i}};


document.onload=zmien(id_Twojej_tabeli,kolor_wiersza);

//]]>
</script>
piotrooo89
w

  1. onMouseOut=this.bgColor


ustaw kolor taki jaki masz w tabelce.
i najlepiej pokaż kod jak to robisz.

btw. ale masakra to dawno było smile.gif takie byki sadziłem...
phpion
Ten sam efekt można uzyskać w samym CSS poprzez tr td oraz tr:hover td. Niestety są problemy z działaniem na starszych przeglądarkach ale moim zdaniem często można sobie to darować i przejść z JS na rzecz CSS.
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-2025 Invision Power Services, Inc.