ポジション

 

 

 ウィンドウをスクロールさせよう

ウィンドウを自動的にスクロールさせてみよう。
普通、ウィンドウをスクロールさせるときはスクロールバーを自分でマウスを使って動かさないといけないよね。
でも、自動的に移動したら便利なこともある。
そんなときのためにこの命令があるんだ。
これは、実はウィンドウだけではなくフォームのようにスクロールバーがあるものに使えるんだ。

★.doScroll("■") ・・・・・★を■の指定に従って動かす。
■:スクロールオプション

■(スクロールオプション)の種類
up               : 上にスクロール(小)
down           : 下にスクロール(小)
left             : 左にスクロール(小)
right            : 右にスクロール(小)
pageUp        : 上にスクロール(大)
pageDown    : 下にスクロール(大)
pageLeft      : 左にスクロール(大)
pageRight    : 右にスクロール(大)

≪フォームなどをスクロールさせる時≫
上の表を見てどのスクロールオプションにするか決めよう。
pageが付くのと付かないものの差は、1回のスクロールの幅だと思っておいてね。
(小)というのは少ししか動かない(大)というのはある程度たくさんスクロールするんだ。
pageというのが付くページのスクロールがたくさん動くのは、フォームなどに比べて全体がが大きいので、普通のupなどだと遅く感じられるからだと思うよ。
これさえわかれば、後は好きなものを選んでプログラムを作ってやればいいね。
≪ウィンドウをスクロールさせる時≫
ウィンドウをスクロールさせたいときはどうすればいいだろうか。
そんなの簡単じゃん!そのまま命令を使えばいいだけでしょ。って思った人もいるかな。
でもよく考えてごらん、ウィンドウを動かすときの部分は何を入れればいい?
ほらね、ここでわからなくなっちゃうね。
よく考えてみよう、今このページをスクロールさせたいんだね。
だったらこのページ自体にidを付けてやろう。
そう、ウィンドウのid<BODY>につければいいんだ。

≪フォームのスクロール≫
関数
function start_scr(){                             ←スクロールさせるための関数
    text_box.doScroll("down");
    timerID = setTimeout("start_scr()",300);
}
function stop_scr(){                             ←スクロールを止めるための関数
    clearTimeout(timerID);
}

下の表の左
<TEXTAREA cols="20" rows="8" id="a">
DHTMLはHTMLやスタイルシートでは・・・・・by ヨッシー
</TEXTAREA>
↑このフォームのidはtext_box

下の表の右
<INPUT type="button" value="スタート" onclick="start_scr()"><p>
<INPUT type="button" value="ストップ" onclick="stop_scr()">
↑スタートを押すとstart_scr()、ストップを押すとstop_scr()を実行。


≪ウィンドウのスクロール≫
基本的には同じ。
idをつけるときに、
   <BODY id="A">
としてやればいい。
あとは、
    A.doScroll("down");
でスクロールできる。

これは、上でやった★.doScroll("■")setTimeoutで一定時間ごとに呼び出しているんだね。
また、clearTimeout()で繰返しを止めているんだよ。
これを実行すると、

≪フォームのスクロール≫

↑自動的にスクロールするよ

↑スタート・ストップでスクロールをコントロールできる

このようにわざわざマウスでスクロールバーを動かさなくても自動的にスクロールするプログラムが出来たね。

ここで基本編は終わりです。
top.gif (583 バイト) 目次へ戻る


back.gif (1116 バイト) オブジェクトの位置を指定する
next.gif (705 バイト) 目次へ戻る