- ベストアンサー
スライドショーなんですが・・・。
スライドショーで 下記のようなHTMLなのですが 一回停止をクリックしてから 再開をクリックすると 一枚目の写真に戻るようになっています。 停止したところから再開するにはどう直せばよいのですか? よろしくお願いします <HTML> <HEAD> <TITLE>スライド</TITLE> </HEAD> <SCRIPT LANGUAGE="JavaScript"> <!-- var num = 1; var flag = 1; var Fm = new Array(5); Fm[0]=""; Fm[1]=" 一枚目"; Fm[2]=" 二枚目"; Fm[3]=" 三枚目"; Fm[4]=" 四枚目"; Fm[5]=" 五枚目"; function timer() { if(document.img.complete) { document.img.filters.blendTrans.Apply(); document.img.src = "photo" + num + ".JPG"; document.img.filters.blendTrans.Play(); document.Fmess.fmess.value = Fm[num]; num++; if(num >5) num = 1; } if(flag == 1) { TimerID = setTimeout("timer()", 5000); } } function crl() { clearTimeout(TimerID); flag = 0; } function restart() { TimerID = setTimeout("timer()", 5000); num = 1; flag = 1; } //--> </SCRIPT> <BODY BGCOLOR="#000000" TEXT="#FFFFFF" onLoad="setTimeout('timer()', 6000)"> <CENTER> <IMG NAME="img" SRC="写真01.JPG" style="filter:blendTrans(duration=1)"> <FORM NAME="Fmess"> <INPUT TYPE="text" NAME="fmess" VALUE=" 説明 " SIZE=50> </FORM> <A HREF="JavaScript:crl()">[停止]</A> <A HREF="JavaScript:restart()">[再開]</A> <A HREF="JavaScript:window.close()">[終了]</A> </CENTER> <BR> </BODY> </HTML>
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
function restart() { TimerID = setTimeout("timer()", 5000); num = 1; flag = 1; } ここを function restart() { TimerID = setTimeout("timer()", 5000); flag = 1; } こうしては?
その他の回答 (1)
- papayuka
- ベストアンサー率45% (1388/3066)
JavaScriptに対しては無知なので違うかも知れませんが。。。 function restart() { TimerID = setTimeout("timer()", 5000); num = 1; flag = 1; } で num = 1 に戻しているので最初からになると思います。 num = 1; を if(num >5) num = 1; に置き換えるとどうでしょう?
お礼
ありがとうございます! ばっちりでした♪
お礼
ありがとうございます! ばっちりでした 単純ことだったんですね(^^;