ページ内のリンクをクリックした際に目的箇所まで滑らかに移動するスムーズスクロールを簡単に適用する方法について紹介します!
スムーズスクロールを適用すると↓のリンクのように目的地まで滑らかにスクロール移動することができます。
スムーズスクロールを適用する事で遷移時の見てくれも良くなりますし、スクロールして移動するので移動先の場所が分かり易くなるという利点があります。
jQuery行の追加
スムーズスクロールを適用したいページの<head></head>内に以下の行を追加してください。
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(function(){
// #で始まるアンカーをクリックした場合に処理
$('a[href^=#]').click(function() {
// スクロールの速度
var speed = 400; // ミリ秒
// アンカーの値取得
var href= $(this).attr("href");
// 移動先を取得
var target = $(href == "#" || href == "" ? 'html' : href);
// 移動先を数値で取得
var position = target.offset().top;
// スムーススクロール
$('body,html').animate({scrollTop:position}, speed, 'swing');
return false;
});
});
</script>
- 1行目はjQuery読み出し行です
- 7行目のvar speedで移動時の速度を指定します
- 11行目でページ内に含まれる"#"の付くリンク全てにスムーズスクロールを適用しています
これだけでスムーズスクロールの適用は完了です!ためしにページ内リンクをクリックし、滑らかに遷移するかを確認してみてください。