先日、「WordPress 上部ローディング進捗バーのコード」という記事を書きました。これはウェブサイトの読み込み時間を表示するためのもので、今回の機能と似ています。

本日ご紹介するのは、横方向の閲覧進捗バーです。ウェブページを下へスクロールすると、進捗バーが徐々に長くなります。また、スクロールバーの色をカスタマイズすることもできます。現在、このサイトにはすでにこのコードを適用しており、効果は当サイトのページで直接確認できます。以下がコードです。

HTML コード

<div id="load"></div>

CSS コード

#load {
    background-color: #ff6651;
    height: 3px;
    width: 0px;
    position: fixed;
    left: 0px;
    top: 0px;
    z-index: 9999;
}

JS コード

$(function() {
    function scroll_fn() {
        let document_height = $(document).height();
        let scroll_so_far = $(window).scrollTop();
        let window_height = $(window).height();
        let max_scroll = document_height - window_height;
        let scroll_percentage = scroll_so_far / (max_scroll / 100);
        $('#load').width(scroll_percentage + '%');
    }
    $(window).scroll(function() {
        scroll_fn();
    });
    $(window).resize(function() {
        scroll_fn();
    });
});

注意:HTML コードは body タグの下の1行目に配置する必要があります。