Muy buenas, tengo esta clase en javascript
:
Código:
function MenuList (param1, param2)
{
/* Variables */
var main = getEl (param1);
var sub = getEl (param2);
/* Eventos */
main.onmouseover = hover;
main.onmouseout = leave;
function hover () //
{
for (var i = 0; i <= 10; i++)
{
setTimeout('opacidad (' + i + ')', i * 50);
}
}
function leave ()
{
for (var i = 10; i > 0; i--)
{
setTimeout ('opacidad (' + i + ')', (10 - i) * 50);
}
}
function opacidad (value)
{
sub.style.opacity = value / 10;
// sub.style.filter = 'alpha(opacity=' + val * 10 + ')';
}
function getEl (val)
{
return (typeof (val) == 'string') ? document.getElementById(val) : val;
}
}
Pues bien, en el
setTimeout no sé por qué pero no puedo llamar a la función
opacidad (value), si lo sustituyo por un alert con las mismas comillas funciona perfectamente. Si elimino las comillas y quito la variable pasada por parámetro también, sin embargo necesito pasar la variable.
¿Alguna idea? Gracias de antemano.