この記事にはプロモーションが含まれています。

【コピペOK】ページトップへ戻るボタン【jQuery未使用】

【コピペOK】ページトップへ戻るボタン【jQuery未使用】

Web制作をしていると実装を求められることがある「ページトップへ戻るボタン」

ケケンタ

今回はそのソースコードをコピペ可能な形で丸っとご紹介します。

この記事で紹介する「ページトップへ戻るボタン」
  • 常に画面の右下に表示されている
  • 一定量スクロールするとフワッとフェードインする

この記事でご紹介するソースコードではjQueryは使用していません。
jQueryの読み込みが不要なため、いくらか手軽に使用することが可能です。




ケケンタ

ケケンタのITブログでは、WebアプリPHPLaravel)やWeb制作WordPressコーディング)について情報を発信しています。
学習中の方や実務をされている方など多くの方にアクセスいただいていますので、ぜひほかの記事も参考にしてみてください!


運動不足、気になっていませんか?

もしプログラミング学習やお仕事で運動不足が気になっているなら
連続屈伸運動がおすすめです!

ボタンにカーソルを合わせるだけ
カウントダウンが始まるタイマーをご用意してみました!

ケケンタ

無理のない範囲で、ぜひ隙間時間に屈伸運動を取り入れてみて下さい!

タイマースタート

3:00

※運動不足だと連続3分で取り組んでもかなり息が切れます
(僕は加えて気分もちょっと悪くなりました……)
絶対にご無理の無い範囲でお取り組みください!


目次

【ver①】ページトップへ戻るボタン|常に表示ver

「ページトップへ戻るボタン」が常に表示されているバージョンです。

See the Pen ページトップへ戻るボタン【常に表示ver】 by ケケンタ (@lgshifbg-the-looper) on CodePen.

【ver②】ページトップへ戻るボタン|スクロールすると表示ver

一定量スクロールすると「ページトップへ戻るボタン」が表示されるバージョンです。
スクロール量はJavaScriptで指定します。

See the Pen ページトップへ戻るボタン【スクロールされたら表示】 by ケケンタ (@lgshifbg-the-looper) on CodePen.

解説

ケケンタ

ご興味のある方向けに簡単に解説をします。

【その①】「ページトップへ戻るボタン」のid名

ご紹介した「ページトップへ戻るボタン」はdiv要素で作成しています。

その際、最も重要なのが「id名」です。

先ほどまでのソースコードではid名を「pagetop」とし、そのdiv要素をJavaScriptで取得しています。

<!-- TOPボタン -->
<div id="pagetop" class="pagetop">Top</div>
// TOPボタン
let pageTop = document.getElementById('pagetop');

HTMLとJavaScriptでid名を一致させることが最も重要

【その②】「ページトップへ戻るボタン」内のテキストや画像配置について

繰り返しになりますが、「ページトップへ戻るボタン」はdiv要素のみで構成されています。

ボタンの見た目はすべてCSSで整えており、【その①】でもお伝えしたid名(pagetop)がJavaScript側での要素取得処理と一致していれば、div要素の中身やCSSは自由に改変可能です。

アイコンを設置して見た目を整えてもOK

【その③】「ページトップへ戻る」動きの指定

デモでは、ボタンを押すと滑らかな動きでページトップへ移動しています。

この動きになるよう設定しているのがJavaScriptの以下の部分です。

// TOPボタンがクリックされたらページトップへ遷移する
pageTop.addEventListener('click', () => {
    window.scroll({ top: 0, behavior: "smooth" });
});

behaviorのプロパティを「smooth」と指定することで、いわゆるスムーススクロールの動きになっています。
一瞬でページトップへ戻る動きにしたい場合は「auto」を指定します。

【その④】ボタンがフェードインするまでのスクロール量の指定

「ページトップへ戻るボタン|スクロールすると表示ver」では

どれぐらいスクロールされたら表示するのかをJavaScriptの以下のハイライト箇所で設定

しています。

window.addEventListener('scroll', () => {
    // スクロール量
    var scrollVolY = window.scrollY;

    /**
     * ページ上端からのスクロール量が
     * 100pxを超えたらTOPボタンを表示する
     */
    if (scrollVolY > 100){
        pageTop.classList.add('visible');
    } else {
        pageTop.classList.remove('visible');
    }
});

ここでは100pxと固定値で指定していますが、例えばメインビジュアルの下辺の位置を取得してそれを指定すれば、メインビジュアルを過ぎたタイミングでボタンが出現するように制御することも可能です。

まとめ

ケケンタ

以上が「ページトップへ戻る」ボタンのご紹介でした!

今回ご紹介したソースコードは極力無駄を省き、機能の最小単位に近い形で記述してあります。

ご使用の際はこちらのソースコードを自由に改変していただき、目的に適した形にカスタマイズしていただければと思います。

このブログではWeb制作やWordPress、PHPの情報を発信していますので、ご興味のある方は他の記事もご覧いただけると嬉しいです。

ケケンタ

それでは、最後までご覧いただきありがとうございました。
この記事が少しでもお役に立ったなら何よりです。

もしもWeb制作の独学に限界を感じたら

Web制作は未経験者でも比較的簡単に習得可能なスキルではあります。

しかしそうは言っても、Web制作を初めて学習する方にとっては覚えることが多く、独学で相談できる相手もいない状況だと気持ちが苦しくなってしまうこともあるのではないでしょうか。

そのようなときは、一度プログラミングスクールの利用を検討してみるのも良いかもしれません。

プログラミングスクールは高額な受講料がネックになることも多いですが、中には良心的な料金でWeb制作スキルを支援してくれるスクールもあります。

ご興味のある方は、以下の記事をご覧になってみて下さい。

この記事が気に入ったら
フォローしてね!

この記事が良いと思ったらシェアしてね!

コメント

コメントする

CAPTCHA


目次