Os presento el codigo el cual no me funciona(no he puesto etiquetas html, head, body para ahorrar codigo) y luego os comento la duda:
--------------------------------------------------------------------------------------------------------
<script type="text/javascript">
var opacidad=100
function iluminar(id){
window.alert(id)
document.getElementByIdid).filters.alpha.opacity=o pacidad
opacidad=opacidad-4
if(opacidad<76){
}
else{
setTimeout("iluminar("+id+")",0)
}
}
<img id="imagen" src="../imagenes/IMG_0782.jpg" width="100" style="filter: alpha(opacity=100);" height="100" onmouseover="iluminar('imagen')">
--------------------------------------------------------------------------------------------------------
Os explico mi problema: como vereis en el codigo tengo una imagen al que si se le paso el raton por encima(onmouseover) llamo a la funcion iluminar y a dicha funcion le paso el id que tiene dicha imagen, o sea, un string. El problema es que cuando llamo a la funcion setTimeout y desde esta llamo a la funcion iluminar, la vble id se convierte en un object, de hecho el window.alert saca por pantalla esto: [object] y se produce un error en la linea que esta en negrita que dice: "se requiere un objeto".
¿Porque se produce esta conversion, a que tipo de objeto se transforma?
¿En algunos sitios he visto que hacen un return y no se devuelve nada, porque?
Gracias