【Labs】ページトップボタン - web design lab
にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村

【Labs】ページトップボタン


【Labs】ページトップボタン

こんにちは(・∀・)

今回はスムースにスクロールしてページのトップへ移動するボタンのサンプルをご紹介します。

ページトップボタン

JavaScript部分にdisplay:noneが記述してありますが、DOM構築時に一瞬ボタンが表示されてしまうため、その対策としてCSSのボタン要素にもdisplay:noneを記述しておきます。必要であればnoscriptにdisplay:blockを記述してください。

Google Hosted LibrariesからjQuery 1.x snippetを<head>内に読み込みます。


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<noscript>
<style>
.pagetop {
display: block;
}
</style>
</noscript>
HTML

<div class="pagetop">
<a href="#top">∧</a>
<!--pagetop--></div>
CSS

#contents {
  width: 1060px;
  margin: 0 auto;
}
.pagetop {
  display: none;
  position: fixed;
  bottom: 100px;
  right: 20px;
  width: 50px;
  height: 50px;
}
.pagetop a {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #9fb7d4;
  color: #fff;
  font-size: 22px;
  line-height: 2.1;
  text-indent: 0.85em;
  text-decoration: none;
}
.pagetop a:hover {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #4776AF;
}
JavaScript

$(function() {
//ボタン表示スクリプト
var pagetop = $('.pagetop');
pagetop.css({'display': 'none'});
$(window).scroll(function () {
if ($(this).scrollTop() > 100) {
pagetop.fadeIn();
} else {
pagetop.fadeOut();
}
});
//トップに戻るスクリプト
/*当サイトのスムーススクロールのスクリプトを使用している場合こちらは不要です*/
pagetop.click(function () {
$('html,body').animate({scrollTop: 0}, 500, 'swing');
return false;
});
});
Result

サンプルデモ

当サイトのサンプル、【Labs】JavaScriptでスムーススクロール【Labs】jQueryでスムーススクロールを使用している場合はこちらのjQueryはなくてもHTMLとCSSを組み合わせるだけで機能します。

関連リンク

【Labs】jQueryでスムーススクロール
【Labs】JavaScriptでスムーススクロール


にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村