function smoothTransition(o,n)
{
o.style.opacity = 0;
o.src = n;
var timer = setInterval(function(){
if (o.style.opacity == 1){
clearInterval(timer);
}
o.style.opacity += 0.01;
}, 10);
}
ここで、o はオブジェクト (この場合は img) であり、n は現在のイメージを置き換える新しいイメージの名前です。しかし、このコードを実行すると、一度だけ実行され、新しい画像に 0.01 の不透明度が与えられてから停止します。何が原因でしょうか?