• 2023.01.25
  • JavaScript
  • GIV_wataru

横スクロールするコンテンツにヒントを表示できるjsライブラリ「ScrollHint」の使い方

スマホ画面のように幅が狭いときに、横スクロールできるコンテンツを配置したいときがあります。ただ何もしないで配置すると、ユーザーが横スクロールをしないで読み進めてしまうこともあります。そんな際に下記のように、スクロールする印があれば、スクロールすることの誘導が可能です。

ということで今回はスクロールヒントを表示できるjsライブラリ「ScrollHint」の使い方を解説します。

ScrollHintのファイルを読み込む

ライブラリなので、まずはファイルを読み込む必要があります。ファイルを読み込む方法はCDNを利用する、ファイルをダウンロードする、npmでインストールする方法があります。

CDNを利用する方法

CDNではHead内に下記の記述をいれて下さい。

<link rel="stylesheet" href="https://unpkg.com/scroll-hint@latest/css/scroll-hint.css"> 
<script src="https://unpkg.com/scroll-hint@latest/js/scroll-hint.min.js"></script>

ダウンロードやインストールをしなくても気軽に使えるのがCDNのよいところですね。

ファイルをダウンロードする方法

ScrollHintのダウンロードページから「Download」をクリックして、専用のファイルをダウンロードしまします。「scroll-hint-master」というファイルがダウンロードされます。

ダウンロードしたら解凍しましょう。解凍したら「cssフォルダ」から「scroll-hintファイル」「jsファイルから、scroll-hint.jsファイルもしくはscroll-hint.min.jsファイル」をダウンロードしてください。

そして下記の記述のようにファイルを読み込ませましょう。

<link rel="stylesheet" href="scroll-hint.css">
<script src="scroll-hint.js"></script>

npmでインストールする方法

npmでは下記の記述で読み込ませます。

npm install scroll-hint --save
import ScrollHint from 'scroll-hint'

ScrollHintの使い方

次に下記のようにスクロールヒントを表示させる方法を解説します。

上記の料金表は下記のHTML、CSSで作成しました。

▢HTML

    <h2 class="price_table">ホームーページ作成プラン料金表</h2>
    <div class="price_table_scroll js-scrollable">
        <section class="price_table_content">
            <ul class="price_list">
                <li>
                    <h3 class="price_list_title">ホームページプランS</h3>
                    <div class="price">100,000円~</div>
                    <div class="price_text">
                        テキストテキストテキストテキストテキストテキスト
                    </div>
                </li>
                <li>
                    <h3 class="price_list_title">ホームページプランM</h3>
                    <div class="price">300,000円~</div>
                    <div class="price_text">
                        テキストテキストテキストテキストテキストテキスト
                    </div>
                </li>
                <li>
                    <h3 class="price_list_title">ホームページプランL</h3>
                    <div class="price">500,000円~</div>
                    <div class="price_text">
                        テキストテキストテキストテキストテキストテキスト
                    </div>
                </li>
            </ul>
        </section>
    </div>

▢CSS

* {
  margin: 0px;
  padding: 0px;
}

.price_table {
  text-align: center;
  margin-top: 20px;
}

.price_table_scroll {
  margin-left: 20px;
  margin-right: 20px;
}

.price_table_scroll .price_table_content {
  width: 800px;
  margin: 0 auto;
}

.price_table_scroll .price_table_content .price_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  width: 100%;
  margin: 0 auto;
  margin-top: 20px;
}

.price_table_scroll .price_table_content .price_list li {
  width: 220px;
  height: 350px;
  margin-left: 50px;
  border: solid 1px #000074;
}

.price_table_scroll .price_table_content .price_list li .price_list_title {
  text-align: center;
  margin-top: 24px;
  margin-bottom: 0px;
}

.price_table_scroll .price_table_content .price_list li .price {
  text-align: center;
  font-weight: bold;
  margin-top: 10px;
}

.price_table_scroll .price_table_content .price_list li .price_text {
  padding: 0px 10px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.price_table_scroll .price_table_content .price_list li:first-child {
  margin-left: 0px;
}

ではコードの解説を詳しく下記で解説します。

js用のClassを付与する

<div class="price_table_scroll js-scrollable">
<section class="price_table_content">
(省略)
</section>
</div>

「js-scrollable」という記述がありますが、後にjavascriptで記述する「new ScrollHint(‘.js-scrollable’, {});」の箇所にある「.js-scrollable」と関連しています。なお「.js-scrollable」の箇所は任意の記述を指定できます。

new ScrollHint('.js-scrollable', {
});

こちらはjsの記述になります。これを記述するだけで、スクロールヒントが表示されます。

オプションを設定する

ScrollHintには様々なオプションがあります。

文字を変更できるオプション

new ScrollHint('.js-scrollable', {
    i18n: {
    scrollable: 'スクロールできます'
}
});

デフォルトだと「scrollable」と表記されますが、上記のように記述すると文字を変更できます。

白に変更する方法

new ScrollHint('.js-scrollable', {
    scrollHintIconAppendClass: 'scroll-hint-icon-white',
});

デフォルトだと黒ですが、上記の記述をすると白に変更できます。

背景が黒いときには白にすると見えやすくなりますね。

ScrollHintにはその他にも様々なオプションがあります。その他のオプションを確認したいときは、ScrollHintのダウンロードページを確認してください。

GIV株式会社は、埼玉県川越市にあるWEB(ホームページ)制作会社です。お困りごと、ご相談、お気軽にご連絡ください。お問い合わせは、こちらから。

GIV / Design / Security / People
お問い合わせ
Contact