電子書籍の厳選無料作品が豊富!

<html>
<head>
<script type="text/JavaScript">
<!--
imglist = ["img1.gif", "img2.gif"];
preImage = new Array();
for (i=0; i<imglist.length; i++) {
preImage[i] = new Image();
preImage[i].src = imglist[i];
}
//-->
</script>
</head>
<body>
<img src="img1.gif" onmouseover="this.src='img2.gif'" onmouseout="this.src='img1.gif'">
</body>
</html>
例えば上記のようなソースでimg1の画像にマウスオーバーでimg2に画像が入れ替わるのですが、
マウスアウトした時に、すぐimg1の画像に戻るのではなく、img2の画像を1分くらい出して
その後img1に入れ替わるようにしたいのですが、どうしたらよいでしょうか?
教えてください。よろしくお願いいたします。

A 回答 (2件)

これではどうでしょう?


チェック用に2秒後に変わります。
setTimeout( "changeimage()", 2000 ) ;
の2000がミリ秒です。
60000にすれば、1分後になります(多分)

<html>
<head>
<script type="text/JavaScript">
<!--
//多重設定防止フラグ
var flag=0;

//タイマ設定
function settimer(){
if(flag==0){
flag=1;
setTimeout( "changeimage()", 2000 ) ;
}
}

//画像変更
function changeimage(){
flag=0;
document.getElementById("aaa").src='img1.gif';
}


//-->

</script>
</head>
<body>
<img name="aaa" src="img1.gif" onmouseover="this.src='img2.gif'" onmouseout="settimer();">
</body>
</html>
    • good
    • 0
この回答へのお礼

早速の回答有り難うございます。
IE6ではタイマーが効くのですが、firefox2.0とネットスケープで確認したところ、タイマーが効きませんでした。
IE以外でも動くようにするにはどうしたらいいでしょうか?

お礼日時:2007/09/13 18:33

あで、


前のに間違いがありました。

<img name="aaa" src="img1.gif" onmouseover="this.src='img2.gif'" onmouseout="settimer();">
は間違いで、
<img id="aaa" src="img1.gif" onmouseover="this.src='img2.gif'" onmouseout="settimer();">
です。

document.getElementById("aaa").src='img1.gif';
で呼んでいるから、前のはおかしいはずなんだけど、動いているなぁ・・・
    • good
    • 0
この回答へのお礼

nameをidに変えたらfirefoxでもネスケでも動きました。
有り難うございました。

お礼日時:2007/09/13 18:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!