• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:スクロールバーの位置指定)

スクロールバーの位置指定

このQ&Aのポイント
  • ホームページのボックス内に縦に並べたリンクをスクロールする際、移動後のページでスクロールバー位置を固定する方法について調査しています。
  • 現在作成中のウェブページでは、ボックス内のリンクをクリックすると別のページに移動します。しかし、スクロールしてリンクをクリックした場合、別のページに移動するとスクロールバーがトップの位置に戻ってしまいます。これにより、下方向にあるリンクをクリックする際に都度スクロールする必要があります。
  • したがって、リンクをクリックして移動した後、移動後のページの特定の位置でスクロールバーを固定する方法について知りたいです。ホームページの制作にお詳しい方、アドバイスをお願いします!

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

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

Javascriptで。 画面のロード終了時に指定したidの要素までスクロール位置をずらすサンプルです。 Win版のSafari3で試したのでたぶんMac版Safariでも大丈夫だと思います。 <html> <head> <title></title> <style type="text/css"> #LINKBLOCK{ position:relative;/*リンクの相対位置を得るのに必要!*/ /*後はテスト用に適当*/ width:5em; height:5em; overflow:auto; border:solid 1px black; } p{padding-top:8em;} </style> <script type="text/javascript"> function linkScroll(linkId){ var obj = document.getElementById(linkId); var block = document.getElementById('LINKBLOCK'); block.scrollTop = obj.offsetTop; } </script> </head> <body onload="linkScroll('LINK1')"> <!-- ↑ここで指定したidが表示されるように --> <div id="LINKBLOCK"> <p><a href="~~" id="LINK1">リンク</a></p> <p><a href="~~" id="LINK2">リンク</a></p> </div> </body> </html>

noname#40724
質問者

お礼

steel_grayさん、適切な回答ありがとうございました。 少し手こずりましたがちゃんと表示も確認でき、そのページでスクロールバーが固定されるようになりました! いろいろと調べたりしたのですが、思い通りにいかなくてとても困っていました。本当にありがとうございましたm()m

すると、全ての回答が全文表示されます。

関連するQ&A