1分間何も操作されない場合フレームを解除して指定ページに移動する


動作ブラウザ 【 IE:4.0  NN:4.0
Internet Explorer Netscape Navigator DreamPassport iCab
3.0x 4.0x 4.5 5.0x 5.5 2.0x 3.0x 4.0x 4.x 6.0 2 3 2.x
Windows × - × × - × -
Macintosh × - × × - -
UNIX - - - - - × × - - -
Dreamcast - - - - - - - - - - × × -

ポイント window.document.onmousedown = chk; window.document.onkeydown = chk; window.document.onmousemove = chk; if (count >= 60) top.location.href = "next.html"; <body onLoad="setInterval('jump()',1000)">
説  明 何も操作されなかったらフレームを解除して指定ページに移動するにはキーイベント、マウスイベントを検知し、検知したらカウンタをゼロ、そうでない場合は1秒ごとにカウンタを1増やします。カウンタはイベントがなければ1秒に1増えますのでカウンタが60を超えたらtop.location.hrefに移動先のページURLを入れます。parent.location.hrefを指定すると親フレームのみ変更することができます。
サンプル <html> <head> <title>1分間何も操作されない場合フレームを解除して指定ページに移動する</title> <frameset cols="50%,*"> <frame src="code_left.html"> <frame src="code_right.html" name="rightFrame"> </frameset> </head> </html>
補足説明 フレームのページ内容は以下の通りです。 ●code_left.html <html> <head> <title>1分間何も操作されない場合フレームを解除して指定ページに移動する</title> <script language="JavaScript"><!-- window.document.onmousedown = chk; window.document.onkeydown = chk; window.document.onmousemove = chk; count = 0; function chk() { count = 0; } function jump() { count++; if (count >= 60) top.location.href = "next.html"; } // --></script> </head> <body onLoad="setInterval('jump()',1000)"> 1分間何も操作されない場合フレームを解除して指定ページに移動する<br> <br> 左ページ<br> </body> </html> ●code_right.html <html> <head> <title>1分間何も操作されない場合フレームを解除して指定ページに移動する</title> <script language="JavaScript"><!-- window.document.onmousedown = chk; window.document.onkeydown = chk; window.document.onmousemove = chk; count = 0; function chk() { count = 0; } function jump() { count++; if (count >= 60) top.location.href = "next.html"; } // --></script> </head> <body onLoad="setInterval('jump()',1000)"> 1分間何も操作されない場合フレームを解除して指定ページに移動する<br> <br> 右ページ<br> </body> </html>

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA