Mam tabele i w niej wiele <tr>
chce aby po najechaniu na jakoś linie podsweitlałą się ona ( zmieniało tło) ale tylko w tej jednej lini
function podswWiersze(id) { if(!document.getElementById)return; // id - id elementu TABLE // zainicjowanie zmiennych // E - pobranie elementu tabeli // i - zmienna - licznik, potrzebna w pętli for var i,E=document.getElementById(id),tr; // jeśli tabela o podanym id nie istnieje // instrukcje nie zostaną wykonane if(E&&E.tagName=='TABLE'){ // pobranie wszystkich komórek TD tabeli tr=E.getElementsByTagName('TR'); // pętla w której do zdarzeń onmouseover i onmouseout // każdej komórki przypisane zostają funkcje realizujące // podświetlanie for(i=0;i<tr.length;i++) { tr[i].onmouseover=function() { // po wystąpieniu zdarzenia onmouseover // klasa CSS wiersza zostanie zmieniona na // 'podswietlona', lecz tylko jeśli wiersz nie jest // zaznaczony if(this.className!='zaznaczona') this.className='podswietlona'; } tr[i].onmouseout=function() { // przywrócenie normalnego stanu wiersza if(this.className!='zaznaczona') this.className='normalna'; } // zaznaczanie wierszy tr[i].onmousedown=function() { // jeśli wiersz jest już zaznaczony, to jest // odznaczany, w przeciwnym wypadku zostaje zaznaczony this.className=this.className=='zaznaczona'?'normalna':'zaznaczona'; } } } }
.podswietlona { background-color: red; font-weight: bold; color: white; } .zaznaczona { background-color: blue; font-weight: bold; color: yellow; } .normalna { background-color: inherit; }
<body onload="podswWiersze('tab')"> <table border="1"> <tr onmouseover="this.style.backgroundColor='red'" onmouseout="this.style.backgroundColor=''"> </tr> <tr onmouseover="this.className='podswietlona'" onmouseout="this.className='normalna'"> </tr> <tr onmouseover="this.className='podswietlona'" onmouseout="this.className='normalna'"> </tr> </table> <table id="tab" border="1" style="width:300px;"> </table>
function start() { var el=document.getElementById('tab1').getElementsByTagName('TD'); for(var i=0;i<el.length;i++) { el[i].onmouseover=function() { this.style.backgroundColor='DDDDDD' } el[i].onmouseout=function() { this.style.backgroundColor='EFF8FA' } } } function zmKolTla(o,c ){ o.style.backgroundColor=c; } function bc1(o) { zmKolTla(o,'DDDDDD') } function bc2(o) { zmKolTla(o,'EFF8FA') }