Очень простой пример, существует целый ряд различных способов сделать это.
ПРИМЕЧАНИЕ
Я редактировал пример после оригинального плаката, добавляющий строку разметки. Теперь он более точно соответствует тому, что демонстрирует.
<html>
<head></head>
<body>
<script type="text/javascript">
function addHighlight(el) {
if (el.className.indexOf('Selected') == -1) {
el.className += ' Selected';
}
}
function removeHighlight(el) {
if (el.className.indexOf('hold') == -1) {
el.className = el.className.replace('Selected','');
}
}
function setHighlighted(el) {
if (el.className.indexOf('hold') == -1) {
el.className += ' hold';
} else {
el.className = el.className.replace(' hold','');
}
}
</script>
<style type="text/css">
tr.Selected td {
background-color: #f00;
}
</style>
<table>
<tbody>
<tr onClick="setHighlighted(this);" onMouseOver="addHighlight(this);" onMouseOut="removeHighlight(this);">
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
</tr>
<tr onClick="setHighlighted(this);" onMouseOver="addHighlight(this);" onMouseOut="removeHighlight(this);">
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
</tr>
<tr onClick="setHighlighted(this);" onMouseOver="addHighlight(this);" onMouseOut="removeHighlight(this);">
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
</tr>
<tr onClick="setHighlighted(this);" onMouseOver="addHighlight(this);" onMouseOut="removeHighlight(this);">
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
<td>ipsum timor alle re</td>
</tr>
</tbody>
</table>
</body>
</html>
Не совсем уверен, что вы имеете в виду. Вы хотите сохранить цвет подсветки, когда вы нажали на строку? –