这是我尝试编写一个动态的 onmouseout 事件,当鼠标离开 div 时会慢慢改变不透明度。由于某种原因,递归和超时似乎没有工作属性,并且不透明度的更改立即完成。
问题: 是否有任何原因setTimeout()
不适用于递归?有没有更好的方法来解决这个问题?
function hide(id)
{
if (gOpacity > .4)
{
gOpacity -= .1;
document.getElementById(id).style.opacity = gOpacity;
setTimeout(hide(id),1000)
}
else
{
gOpacity = 1.0
}
}