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';
      }
    }
  }
}