バージョン

igScroll の構成

目的

このトピックでは、igScroll の構成方法をコード例を用いて説明します。

このトピックの内容

このトピックは、以下のセクションで構成されます。

デフォルトの構成

このセクションは、表示およびスクロール動作に関連するデフォルトの igScroll 設定をリストします。

プロパティ タイプ デフォルト値 説明
scrollbarType string "custom" このオプションは、コンテナーに表示されるスクロールバーのタイプを決定します。デフォルトでカスタム スクロールバーが表示されます。現在の環境のネイティブなスクロールバーを表示するには、オプションを native に設定します。スクロールバーを非表示するには、none に設定します。
alwaysVisible bool false このオプションは、環境に関係なく幅の狭いカスタム スクロールバーが常に表示されるかどうかを決定します。デフォルトで、ユーザーがスクロール可能なコンテンツまたはスクロールバーを操作しない場合、スクロールバーは非表示になります。スクロールバーを常に表示するには、このオプションを true に設定します。scrollbarType が "custom" の場合のみ適用されます。
wheelStep number 50 このオプションは、マウス ホイールを一度使用すると、スクロールするピクセルを決定します。スムージングがないスクロールのみに適用されます。smoothing オプションを false に設定します。
inertiaStep number 1 このオプションは、タッチ デバイスで慣性がスクロールする修飾子を決定します。負の値が設定される場合、スクロールは反転されます。
inertiaDuration number 1 このオプションは、タッチ デバイスで慣性が中止する前にスクロールする時間の修飾子を決定します。値を 0 に設定すると、タッチ デバイスで慣性を無効にします。
swipeToleranceX number 30 このオプションは、タッチ操作で上下にスワイプした際に許可される左右移動のピクセル数を決定します。ユーザーが上下にスクロールする際にジェスチャに左右のブレがある場合、コンテンツが左右にはスクロールせずに上下のみにスクロールします。
inertiaDeltaY number 1.25 このオプションは、慣性が水平方向ではなく垂直方向へのみスクロールするために、垂直方向の速度が水平方向の速度の何倍になるかを決定します。
inertiaDeltaX number 2 このオプションは、慣性が垂直方向ではなく水平方向へのみスクロールするために、水平方向の速度が垂直方向の速度の何倍になるかを決定します。

構成の概要

以下の表は、igScroll の構成可能な要素を示します。

構成の目的: 使用するプロパティ: 設定値:
スムーズなホイール スクロール -
Firefox でマウス ホイールを使用するスクロール動作と同様な動作。
smoothing
smoothingStep
smoothingDuration
true
1
1
複数のコンテナーを一度に垂直スクロール syncedElemsV 現在の igScroll と垂直方向に同期する jQuery 要素の配列。
複数のコンテナーを一度に水平スクロール syncedElemsH 現在の igScroll と水平方向に同期する jQuery 要素の配列。
カスタム水平スクロールバーを設定 scrollbarH 水平スクロールバーになる要素。
水平スクロールバーを表示するために overflow-x: auto および幅が設定されるコンテンツを持つ外部の要素が可能です。
カスタム垂直スクロールバーを設定 scrollbarV 垂直スクロールバーになる要素。
垂直スクロールバーを表示するために overflow-y: auto および高さが設定されるコンテンツを持つ外部の要素が可能です。
カスタム スクロールバーがリンクされている場合、リンクされているスクロールバーのみのスクロールを許可し、現在のスクロールバーのスクロールを無効にします。
メイン コンテンツを上下にスクロールするリンクされた垂直スクロールバーで特定のスクロール位置の後に表示されるコンテンツの量を更新するなどのカスタム ロジックがある場合に便利です。
たとえば、仮想化の実装などです。
scrollOnlyVBar/scrollOnlyHBar true
水平/垂直スクロールバーのカスタム水平スクロールバーの親を設定します。
カスタム DOM 構造を構築する場合に便利です。たとえば、modifyDOM オプションが false に設定される場合に使用できます。
scrollbarHParent/ scrollbarVParent スクロールの親要素になる要素。

複数のコンテナーを一度に垂直スクロール

このセクションは、別のコンテナーを垂直方向に同期化する方法を紹介し、コード例があります。

1) igScroll DOM 要素を定義します。

HTML の場合:

 <div style="width: 33%; float:left; position: relative;">
    <div id='scrContainerLeft' style="height:200px; width:100%; overflow: hidden;">
        <div style="width: 500px;">
            ...
        </div>
    </div>
</div>

2) igScroll と同期される追加のスクロール可能なコンテナーを定義します。

HTML の場合:

 <div style="width: 33%; float:left; position: relative;">
    <div id='scrContainerMiddle' style="height:200px;  width:100%;  overflow: auto;">
        <div  style="height:600px;width: 500px; background-color: green;">
            ...
        </div>
    </div>
</div>
<div style="width: 33%; float:right; position: relative;">
    <div id='scrContainerRight' style="height:200px;  width:100%; overflow: auto;">
        <div  style="height:600px;width: 500px; background-color: red;">
            ...
        </div>
    </div>
</div>

3) 追加のスクロール可能な要素をポイントする syncedElemsV オプションで igScroll ウィジェットを初期化します。

JavaScript の場合:

$("#scrContainerLeft").igScroll({
    syncedElemsV: [$("#scrContainerMiddle"), $("#scrContainerRight")]
});

複数のコンテナーを一度に水平スクロール

このセクションは、別のコンテナーを水平方向に同期化する方法を紹介し、コード例があります。

複数のコンテナーを一度に水平スクロールで複数のスクロール可能なコンテナーの定義の手順 1 および 2 を実行します。 syncedElemsH オプションが追加のスクロール可能な要素に参照する igScroll ウィジェットを初期化します。

JavaScript の場合:

$("#scrContainerLeft").igScroll({
    syncedElemsH: [$("#scrContainerMiddle"), $("#scrContainerRight")]
});

カスタム水平スクロールバーを設定

このセクションは、カスタム要素を igScroll の水平スクロールバーとして設定する方法を紹介し、コード例があります。

1) 主要なターゲット要素を定義します。

HTML の場合:

<div style="width: 200px;">
    <div id='scrContainerLeft' style="height:200px; width:100%; overflow: hidden;">
        <div style="width: 500px;">
            ...
        </div>
    </div>
</div>

2) カスタム スクロールバー要素を定義します。

HTML の場合:

<div id='customHScroll' style='width:200px; overflow-x:auto;'>
    <div style='width:500px; height:1px;'></div>
</div>

3) 追加のスクロール可能な要素をポイントする scrollbarH オプションで igScroll ウィジェットを初期化します。

JavaScript の場合:

$("#scrContainerLeft").igScroll({
    scrollbarH: $("#customHScroll")
});

カスタム垂直スクロールバーを設定

このセクションは、カスタム要素を igScroll の垂直スクロールバーとして設定する方法を紹介し、コード例があります。

1) 主要なターゲット要素を定義します。

HTML の場合:

<div style="width: 200px; float:left; position:relative;">
    <div id='scrContainerLeft' style="height:200px; width:100%; overflow: hidden;">
        <div style="width: 500px;">
            ...
        </div>
    </div>
</div>

2) カスタム スクロールバー要素を定義します。

HTML の場合:

<div id='customVScroll' style='height:200px; overflow-y:auto; float:left; position:relative;'>
    <div style='width:20px; height:500px;'></div>
</div>

3) 追加のスクロール可能な要素をポイントする scrollbarH オプションで igScroll ウィジェットを初期化します。

JavaScript の場合:

$("#scrContainerLeft").igScroll({
    scrollbarV: $("#customVScroll")
});

関連コンテンツ

トピック

サンプル

オンラインで表示: GitHub