Me he picado con esto...
Aquí va otra versión que utiliza CSS y no imágenes (con lo cual todos los botones tienen el mismo color, en la anterior podían ser distintos):
Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>menú botones</title>
<script type="text/javascript">
var n=5
function hazTablaCSS()
{ var tx = '<table id="menuBotones">'
for (i=0;i<n;i++)
{ tx += '<tr><td id="boton'+i+'" class="normal" onClick="eligeCSS('+i+')">Opción '+i+'</td></tr>'
}
tx += '</table>'
document.writeln(tx)
}
function eligeCSS(j)
{ for (i=0;i<n;i++)
{ var celda=document.getElementById('boton'+i)
if (i==j) celda.className="pulsado"
else celda.className="normal"
}
}
</script>
<style type="text/css">
#menuBotones { border:0; font-family:Arial, Helvetica, sans-serif; font-size:0.8em; }
#menuBotones td { margin:5px; padding:1px 7px; }
.normal { background-color:#cccccc; border:2px outset #cccccc; color:#000000;}
.pulsado { background-color:#aa0000; border:2px inset #aa0000; color:#ffffff; }
</style>
</head>
<body>
<script type="text/javascript">hazTablaCSS()</script>
</body>
</html>