Que tal publique mi respuesta hace unos dias pero al parecer no la han publicado
esta es la solucion
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/
TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Celdas</title>
<script type="text/javascript">
cargarEventos(window, 'load', cargarEfectos, false);
function cargarEventos(elemento,evento,funcion,capturarBurbujeo){
if(elemento.addEventListener){
elemento.addEventListener(evento, funcion, capturarBurbujeo);
return true;
} else if(elemento.attachEvent){
elemento.attachEvent('on'+evento, funcion);
return true;
} else{
return false;
}
}
function cargarEfectos(){
var tds;
tds = document.getElementsByTagName('td');
var indice;
for(indice=0; indice<tds.length; indice++){
cargarEventos(tds[indice], 'mouseover', resaltar, false);
cargarEventos(tds[indice], 'mouseout', noResaltar, false);
}
}
function resaltar(e){
var elemento;
if(window.event)
elemento = window.event.srcElement;
else
elemento = e.target;
elemento.style.border = "1px solid #f00";
}
function noResaltar(e){
var elemento;
if(window.event)
elemento = window.event.srcElement;
else
elemento = e.target;
elemento.style.border = "1px solid #00f";
}
/*
function resalta(elEvento){
var evento = elEvento || window.event;
var elDiv = document.getElementById("seccion");
var tds = elDiv.getElementsByTagName("td");
switch (evento.type){
case 'mouseover':
for(var i=0;i<tds.length;i++){
tds[i].className = "tdclass";
}
break;
case 'mouseout':
for(var i=0;i<tds.length;i++){
tds[i].className = "";
}
break;
}
}
window.onload = function (){
document.getElementById("seccion").onmouseover = resalta;
document.getElementById("seccion").onmouseout = resalta;
}
*/
</script>
<style type="text/css">
td{border:thin solid silver;}
.tdclass{border:thin solid red;}
</style>
</head>
<body>
<table id="seccion" width="200" height="200" border="1">
la funcion
function cargarEventos(elemento,evento,funcion,capturarBurbujeo){
inicializa los eventos para la compatibilidad de navegadores
la funcion
function cargarEfectos(){
inicializa los eventos mouseout y mouseover
la funcion
function resaltar(e) y function noResaltar(e)
lo que hace es verificar cual es elemento TD que tiene el foco o pierde o foco
y una ves realiza las modificaciones