změna barvy pozadí řádku po kliknutí myší

Ahoj,
používám:
<tr style="background-color:#ffffcc" onmouseover="this.style.backgroundColor='ccff99';"
onmouseout="this.style.backgroundColor='#ffffcc';">
takže se barvy na řádku při přejetí myší pěkně mění, ale potřeboval bych, aby se po kliknutí na řádek nastavila ještě třetí barva. Zkoušel jsem:
onclick="this.style.backgroundColor='grey';" ale to funguje jenom dokud je kurzor nad tím řádkem, potom se barva vrací zpět na původní a i to funguje jen v IE.
Nevíte někdo, jak na to?
Barva se vrátí zpátky v momentu kdy dojde k události onmouseout.
Takže když zajedeš nad řádek, změní se na ccff99. Když klikneš změní se na grey. No a když odjedeš pryč, změní se na ffffcc ;)

Chtělo by to asi podmínku if, musíš v události onmouseout kontrolovat jestli barva je ccff99 nebo grey. Pokud je grey, tak se v onmouseout žádná změna barvy nesmí provést.