[jQuery] ページ内をスムースにスクロールする

WordPressについて、というよりはホームページ作成での便利な事ですが…。

ここの記事を参考にしてページ内をスムースにスクロールする関数を作成しました(ほぼ丸写しですけど)。

使用条件としては必ずjQueryが読み込まれている事です。

// Easingの追加
jQuery.easing.quart = function (x, t, b, c, d) {
	return -c * ((t=t/d-1)*t*t*t - 1) + b;
};

/*-------------------------------------
 ページ読み込み中
-------------------------------------*/
jQuery(document).ready(function(){

	//
	// <a href="#***">の場合、スクロール処理を追加
	//
	jQuery('a[href*=#]').click(function() {
		if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
			var $target = jQuery(this.hash);
			$target = $target.length && $target || jQuery('[name=' + this.hash.slice(1) +']');
			if ($target.length) {
				var targetOffset = $target.offset().top;
				jQuery('html,body').animate({ scrollTop: targetOffset }, 1200, 'quart');
				return false;
			}
		}
	});

});

これで後は、

<a href="#header">TOPに戻る</a>

のようにhref属性にページ内リンクを貼るとスムースにスクロールするようになります。
結構面白いです。

[jQuery] ページ内をスムースにスクロールする 本文ここまで
「jQueryを利用すれば利便性に優れた面白いホームページが作れます。これはページ内リンクをスムースにスクロールさせる関数です。」とつぶやいてる私の為に、クリックしてー!
ブログセンター  人気ブログランキングへ  ブログランキング・にほんブログ村へ  blogram投票ボタン
投稿タグ
境界線
コメントフォーム

コメント

コメントフォーム
※管理人にのみ公開されます

  • jQueryを使ったスムーズスクロール

    ウェブページでページ内のアンカーにジャンプするとき、スムーズスクロールなんて技を使ってみることがあります。

    スムーズスクロールを採用したサイトはこれまで何サイトか作っ...

    投稿日時: 2010-04-15 15:45:06 投稿者: やまゆりのウェブサイト制作日記
コンテンツ内容 ここまで
広島、晴れのち晴れ