- ベストアンサー
ページ最終行へジャンプする方法
お世話になります。 アンカーを付けないで、ページ最終行へジャンプする方法をhtmlのスレッドでお聞きしたところ http://oshiete1.goo.ne.jp/kotaeru_vote.php3?q=2903901 JavaScriptなら可能ということでしたので こちらで改めてお尋ねするしだいです。 <a href="">Top</a> または、 <a href="#">Top</a> で、そのページの先頭行へジャンプします。 同様に、アンカーを付けることなく ページの最終行へジャンプする方法はないものでしょうか。 よろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> <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>
その他の回答 (3)
- k0021
- ベストアンサー率26% (32/120)
対象リンクのライブラリ集の共通変数を参照して下さい Windows98版 IE6, NN4, Mozilla で動作確認しているそうです
- leap_day
- ベストアンサー率60% (338/561)
こんにちは ん~~質問の意図がよく分からないですけど・・ <a href="">Top</a> または、 <a href="#">Top</a>のようなやり方でいいのなら 最後の行に <a name="**"> とつけて <a href="#**">最後にリンク</a> とすればできると思いますけど? アドレスにはhttp:/~~#**とついてしまいますけど(--;) **は適当に名前を付けてください
お礼
早速レスありがとうございます。 >最後の行に <a name="**"> とつけて これをしないで、ページ内メニューで最終行へ ジャンプできないものかと思ったのですが。
- VCAT
- ベストアンサー率20% (16/79)
ページの最終行にジャンプしたとしてもそこがブラウザの 上辺付近にくるわけではないですが。 つまり、中途半端なところで止まってしまうわけで。
お礼
レスありがとうございます。 早速試してみました。 var speed = 1; // スクロールのスピード(1に近いほど速く) var move = 1000; // で、試したところ最終行へ一瞬で移動します。 どうもありがとうございました。