近年のウェブデザインのトレンドの1つに、シングルページレイアウトがあります。このスタイルのサイトは、複数のセクションが1つのページに表示され、ユーザーはページ内のアンカーをクリックして異なるセクション間を移動することができます。
この記事では、jquery.page-scroller.jsを使って、そのようなページ内アンカーをスムーズにスクロール移動する方法を詳しく説明します。
必要なJavaScriptの導入
まず、jquery.page-scroller-308.jsを使用するために、次の2つのJavaScriptファイルを読み込む必要があります。
- jquery-1.6.min.js
- jquery.page-scroller-308.js
これらのファイルを読み込むことで、ページ内アンカーをスムーズにスクロールさせる機能が利用可能になります。
<script type="text/javascript" src="js/jquery-1.6.min.js"></script> <script type="text/javascript" src="js/jquery.page-scroller-308.js"></script>
さらに、adjSpeedという変数を使って、スクロール移動のスピードを設定できます。
例えば、0.5秒でスムーズに移動させたい場合は、以下のように設定します。
<script type="text/javascript"> adjSpeed = .5; </script>
スタイルの適用
スムーズスクロールを適用する要素のスタイルを定義するために、以下のCSSを追加します。このスタイルはサンプルとして提供されており、必要に応じて変更してください。
<style type="text/css"> <!-- h1{ font-size:14px; font-weight:normal; line-height:1.2em; } #idWrap{ width:1000px; height:1500px; } a{ font-size:14px; text-decoration:none; } --> </style>
ページ内アンカーのHTML記述
通常のページ内アンカーと同じ方法でHTMLを記述します。以下は、ページのトップにアンカーを配置し、その1500px下にページトップへのリンクを配置するサンプルです。
<a id="top"></a> <div id="idWrap"> <h1>ページ内アンカーをスムーズにスクロール<br>(1500px下にアンカーリンクがあります)</h1> </div><!--/高さを1500pxに指定--> <a href="#top">↑ページトップへ</a>
ページ内アンカーをスムーズにスクロールするデモページ
具体的な動作を確認するために、以下のデモページをご参照ください。
ソース元の情報
このスムーズスクロールの機能は、以下のサイトから取得したスクリプトを使用しています。より詳しい情報や、他の利用方法、カスタマイズの方法などはソース元のサイトをご参照ください。
[JS]簡単に設置できるページ内をスムーズにスクロールできるスクリプト -Page Scroller ver.3
まとめ
ページ内アンカーのスムーズスクロールは、ユーザー体験を向上させるための素晴らしい方法です。jquery.page-scroller.jsを使って簡単にこの機能を実装できるので、是非ともあなたのウェブサイトに導入してみてください。
※流用される場合は自己責任でお願いします。
デモページタグ内のGoogleアナリティクスタグは流用しないで下さい。