• ベストアンサー

ページ最終行へジャンプする方法

お世話になります。 アンカーを付けないで、ページ最終行へジャンプする方法をhtmlのスレッドでお聞きしたところ http://oshiete1.goo.ne.jp/kotaeru_vote.php3?q=2903901 JavaScriptなら可能ということでしたので こちらで改めてお尋ねするしだいです。 <a href="">Top</a> または、 <a href="#">Top</a> で、そのページの先頭行へジャンプします。 同様に、アンカーを付けることなく ページの最終行へジャンプする方法はないものでしょうか。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MAN_MA_RUI
  • ベストアンサー率41% (426/1024)
回答No.3

> <a href="">Top</a> または、 <a href="#">Top</a> > で、そのページの先頭行へジャンプします。 このやり方は好ましくないです。一つ目の記法ではカレントディレクトリのトップへ飛ばすブラウザが存在し、二つ目の記法では先頭行へ移動せずその場にとどまるブラウザが存在します。 環境によって挙動が異なる記法を用いるのは余り好ましいと言えないでしょう。 HTMLで先頭の行に飛ばすときもラベルを指定することが必要です。 で、javascriptで最終行にスクロールさせたければこういうのが便利だと思いますよ。 (TAG Indexにあったスクリプトを参考にしました:http://www.tagindex.com/javascript/window/scroll.html) <SCRIPT TYPE="text/javascript"> <!-- var speed = 100; // スクロールのスピード(1に近いほど速く) var move = 5; // スクロールのなめらかさ(1に近いほどなめらかに) var x = 0; var y = 0; var nx = 0; var ny = 0; function scroll(){ window.scrollBy(0, move); var rep = setTimeout("scroll()", speed); if(document.all){ x = document.body.scrollLeft; y = document.body.scrollTop; } else if(document.layers || document.getElementById){ x = pageXOffset; y = pageYOffset; } if(nx == x && ny == y){ clearTimeout(rep); } else{ nx = x; ny = y; } } // --> </SCRIPT> <a href="javascript:void(0);" onclick="scroll()">スクロール!</a>

rqg2010
質問者

お礼

レスありがとうございます。 早速試してみました。 var speed = 1; // スクロールのスピード(1に近いほど速く) var move = 1000; // で、試したところ最終行へ一瞬で移動します。 どうもありがとうございました。

その他の回答 (3)

  • k0021
  • ベストアンサー率26% (32/120)
回答No.4

対象リンクのライブラリ集の共通変数を参照して下さい Windows98版 IE6, NN4, Mozilla で動作確認しているそうです

参考URL:
http://www.din.or.jp/~hagi3/JavaScript/JSTips/Default.htm
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.2

こんにちは ん~~質問の意図がよく分からないですけど・・ <a href="">Top</a> または、 <a href="#">Top</a>のようなやり方でいいのなら 最後の行に <a name="**"> とつけて <a href="#**">最後にリンク</a> とすればできると思いますけど? アドレスにはhttp:/~~#**とついてしまいますけど(--;) **は適当に名前を付けてください

rqg2010
質問者

お礼

早速レスありがとうございます。 >最後の行に <a name="**"> とつけて これをしないで、ページ内メニューで最終行へ ジャンプできないものかと思ったのですが。

  • VCAT
  • ベストアンサー率20% (16/79)
回答No.1

ページの最終行にジャンプしたとしてもそこがブラウザの 上辺付近にくるわけではないですが。 つまり、中途半端なところで止まってしまうわけで。