Tu código no funcionaba porque pasas como parámetro una variable que no esta declarada:
Código HTML:
Ver original<td id="c1" onmouseover="cambiarColorRandom(c1);">
posibles soluciones:
Código Javascript
:
Ver original<td id="c1" onmouseover="c1 = document.getElementById('c1'); cambiarColorRandom(c1);">
o
Código Javascript
:
Ver original<td id="c1" onmouseover="cambiarColorRandom(document.getElementById('c1'));">
Paso como párametro un objeto, ya que en tu función ocupas el parámetro como objeto valga la redundancia
Otro error:
pusiste ";" al final en el rgb:
identificadorCelda.bgColor="rgb("+color+","+color2 +","+color3+")
;"
identificadorCelda.bgColor="rgb("+color+","+color2 +","+color3+")"
Y nuevamente debes cambiar:
por
Código Javascript
:
Ver originalidentificadorCelda.style.backgroundColor
te dejo tu código funcionando:
Código HTML:
Ver original
<script type="text/javascript">
function cambiarColorRandom(identificadorCelda)
{
var color;
var color2;
var color3;
color=parseInt(Math.random()*(255));
color2=parseInt(Math.random()*(255));
color3=parseInt(Math.random()*(255));
identificadorCelda.style.backgroundColor="rgb("+color+","+color2+","+color3+")";
}
<table id="tabla" border="2"> <td id="c1" onmouseover="cambiarColorRandom(document.getElementById('c1'));"> 1
<td id="c2" onmouseover="cambiarColorRandom(document.getElementById('c2'));"> 2
<td id="c3" onmouseover="cambiarColorRandom(document.getElementById('c3'));"> 3
<td id="c4" onmouseover="cambiarColorRandom(document.getElementById('c4'));"> 4
<td id="c5" onmouseover="cambiarColorRandom(document.getElementById('c5'));"> 5
<td id="c6" onmouseover="cambiarColorRandom(document.getElementById('c6'));"> 6
<td id="c7" onmouseover="cambiarColorRandom(document.getElementById('c7'));"> 7
<td id="c8" onmouseover="cambiarColorRandom(document.getElementById('c8'));"> 8
<td id="c9" onmouseover="cambiarColorRandom(document.getElementById('c9'));"> 9