人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Javascriptについての質問です。
現在下記のプログラムで”スクロールする”のボタンを押すと、画面がスクロールするJavaがあります。
これにプラス、”スクロールする”のボタンをクリックしてから何秒後かに指定したURLにジャンプする命令を加えたいのですが…どう表記すれば良いでしょうか?教えてください。
<head>
<SCRIPT language="JavaScript">
<!--
// 一定間隔でスクロールさせる
itv = 1; // スクロール表示する間隔(ミリ秒単位)
osh = 1; // 一回でスクロールする幅
function scrollPage() {
scrollBy(1,osh);
setTimeout("scrollPage()",itv);
}
//-->

function delayJump2('contents.html',5000,0){
if ((newDate()).getTime()-start>=delay)
document.location.href =url;
else
setTimeout('delayJump2("'+url+'",'+delay+','+start+')',100);
}


//delayJump(ジャンプ先URL,待ち時間(ミリ秒)

function delayJump('contents.html',5000) {
delayJump2(url,delay,(new Date()).getTime());
}

</SCRIPT>
</head>

ボタン部分
<INPUT type="button" value="スクロールする" onClick="scrollPage()">

●質問者: praide
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:DELAY href HTML iTV Java
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● きゃづみぃ
●5ポイント

http://www.tagindex.com/html_tag/page/meta_05.html

<meta http-equiv="Refresh" content="15;URL=http://www.tagindex.com/">

これを入れたらいいでしょう。

◎質問者からの返答

自動的にジャンプではなくて「スクロールする」のボタンを押してから何秒という命令を追加したいのですが…


2 ● kazu1107
●5ポイント

scrollByを何回実行したかをカウントして、そのカウント数が一定になったとき

window.location ="http://.../";

と処理するのはどうでしょうか?

◎質問者からの返答

すいません…詳しくないものでソースを表示して頂けると助かるのですが…


3 ● yo-kun
●20ポイント

こんな方法はどうでしょう?

以下の例では8000msでgoogleのページに飛ぶようにしてあります。


<head>

<SCRIPT language="JavaScript"></p> <p><!--</p> <p>// 一定間隔でスクロールさせる</p> <p>itv = 1; // スクロール表示する間隔(ミリ秒単位)</p> <p>osh = 1; // 一回でスクロールする幅</p> <p>function setTimer() {</p> <p> setTimeout("scrollPage()",itv);</p> <p> setTimeout("jumpPage()", 8000);</p> <p>}</p> <p>function scrollPage() {</p> <p>scrollBy(1,osh); </p> <p>setTimeout("scrollPage()",itv);</p> <p>}</p> <p>function jumpPage() {</p> <p> window.open("<a href="http://www.google.co.jp/" target="_blank">http://www.google.co.jp/</a>","_self");</p> <p>}</p> <p>//--></p> <p></SCRIPT>

</head>


ボタン部分

<INPUT type="button" value="スクロールする" onClick="setTimer()">

◎質問者からの返答

初心者で申し訳ありません。

function delayJump2('contents.html',5000,0){

if ((newDate()).getTime()-start>=delay)

document.location.href =url;

else

setTimeout('delayJump2("'+url+'",'+delay+','+start+')',100);

}

//delayJump(ジャンプ先URL,待ち時間(ミリ秒)

function delayJump('contents.html',5000) {

delayJump2(url,delay,(new Date()).getTime());

}

が余計に入っていました。ややこしくなってしまいました。

<SCRIPT language="JavaScript"></p> <p> <!--</p> <p> // 一定間隔でスクロールさせる</p> <p> itv = 1; // スクロール表示する間隔(ミリ秒単位)</p> <p> osh = 1; // 一回でスクロールする幅</p> <p> function scrollPage() {</p> <p> scrollBy(1,osh); </p> <p> setTimeout("scrollPage()",itv);</p> <p> }</p> <p> //--></p> <p> </SCRIPT>

にプラスするとなるとどうなりますでしょうか?


4 ● yo-kun
●60ポイント ベストアンサー

↑では失礼しました。(失敗しました(^^;)

書き直します。ポイントは不要です。

<head>
<SCRIPT language="JavaScript">
<!--
// 一定間隔でスクロールさせる
itv = 1; // スクロール表示する間隔(ミリ秒単位)
osh = 1; // 一回でスクロールする幅
function setTimer() {
 setTimeout("scrollPage()",itv);
 setTimeout("jumpPage()", 8000);
}
function scrollPage() {
scrollBy(1,osh); 
setTimeout("scrollPage()",itv);
}
function jumpPage() {
 window.open("http://www.google.co.jp/","_self");
}
//-->
</SCRIPT>
</head>
ボタン部分
<INPUT type="button" value="スクロールする" onClick="setTimer()">
◎質問者からの返答

すばやい対応ありがとうございます!

記述してみましたが、スクロールしなくなりました。

しかも何故かPHPファイルだと文字化けしてしまいます…

Googleには8秒後に飛びました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ