nanoScrollerJS は、Mac OS X Lion システムのスクロール バー効果を実現する簡単な方法を使用する jQuery プラグインです。このスクロールバー プラグインは、最小限の HTML 構造 .nano > を使用します。他のスクロール バー要素 .pane > .nano-slider は、プラグインの実行中に動的にロードされます。このスクロールバー プラグインは、ネイティブ スクロールバーを使用して、iPad、iPhone、および一部の Android タブレットで動作します。
使用方法
HTML 構造
スクロール バー プラグインが動作するために必要な HTML 構造は次のとおりです:
nano および nano-content のクラス名は、プラグインのパラメーターを通じて変更できます (変更後は、プラグインの CSS ファイルもそれに応じて変更する必要があります)。
CSS スタイル
nanoscroller.css ファイルを HTML
コンテナの幅と高さを指定し、スクロールバーのいくつかの基本スタイルをカスタマイズする必要があります。例:
コードをコピーします
コードをコピー
コードをコピーします
コードをコピーします
コードをコピー
コードをコピーします
コードをコピーします
破壊
nanoScroller スクロール バーを破棄し、スクロール バーをブラウザーのネイティブ スクロール バーにリセットします。
スクロールバーを点滅に設定します。点滅時間はパラメータで設定します(デフォルトは1.5秒)。
nanoScroller();
スクロールバーを更新します。この操作では、スクロール バーの位置と高さが単純に再計算されます:
カスタムイベント
スクロールエンド
カスタムのscrollendイベントは、スクロールバーがコンテナの一番下までスクロールするたびにトリガーされます。 (スクロールバーがコンテナの一番下に達すると、ユーザーが再度スクロールしてもこのイベントはトリガーされません)
一部のブラウザはこのイベントを同時に複数回トリガーするため、このイベントをバインドするには jQuery .bind または .on を使用する必要があります。 jquery-debounce プラグインを使用すると、ブラウザーにこのイベントを 100 ミリ秒ごとにトリガーさせることができます:
スクロールトップ
scrollend イベントと同様に、ユーザーがコンテナの一番上までスクロールするたびにトリガーされます。
scrollend イベントは、scrolltop イベントと同じで、ユーザーがスクロールするたびに発生します。このイベントには、スクロール バーの現在の位置、最大高さ、方向 (上または下) の js オブジェクト パラメーターが付属します:
設定パラメータ
このスクロール バー プラグインでは利用可能なパラメーターのセットがあります:
iOSNativeScrolling
iOS 5 でネイティブ スクロールバーを使用したい場合は、これを true に設定できます。ネイティブ スクロールバーは iOS 5 でより適切に機能します。
iOSNativeScrolling が true に設定されている場合、ネイティブ スクロール バーをサポートするためにデバイスによって .pane と .slider が生成/追加されないことに注意してください。
デフォルト値: false。
スライダー最小高さ
スクロール要素の最小の高さを設定します:
デフォルト値: 20。
スライダー最大高さ
スクロール要素の最大高さを設定します:
デフォルト値: null。
PageScrolling を防止
コンテナのコンテンツが上または下にスクロールするときにページがスクロールしないようにするには、true に設定します。
デフォルト値: false。
サイズ変更を無効にする
nanoscroller のサイズが変更されないようにするには、true に設定します。このオプションを true に設定した場合は、忘れずにリセット メソッドを呼び出してください。そうしないと、奇妙な問題が発生します:
デフォルト値: false。
常に表示
スクロール バーが停止したときに自動非表示機能をオフにするには、true に設定します:
デフォルト値: false。
フラッシュディレイ
フラッシュ オプションを有効にすると、このオプションはフラッシュ遅延を指定するために使用されます:
デフォルト値: 1500。
ペインクラス
スクロールバートラック要素のクラス名。これを変更する場合は、CSS ファイルに対応する変更を加える必要があります:
デフォルト: 'ナノペイン'。
コンテンツクラス
スクロールバーコンテナdivのクラス名。これを変更する場合は、CSS ファイルに対応する変更を加える必要があります:
デフォルト: 'nano-content'。
タブインデックス
スクロール可能なコンテンツの順序を設定します。-1 に設定すると、タブ キーを使用するとコンテンツがスキップされます。
デフォルト値: 0。
ブラウザ互換
デスクトップ
IE7
Firefox 3
クロム
サファリ 4
オペラ 11.60
モバイルデバイス
iOS 5 (iPhone、iPad、iPod Touch)
iOS 4 (プラグインが付属)
Android Firefox
Android 2.2/2.3 ネイティブ ブラウザ (プラグインが付属)
Android Opera 11.6 (プラグインが付属)
プラグインを介してモバイル デバイスのブラウザで nanoScroller を実行することを改善します
overthrow.js を使用すると、nanoScroller をモバイル ブラウザーでより適切に動作させることができます。モバイル デバイス上の CSS オーバーフロー (overflow: auto;/overflow:scroll;) をシミュレートします。
overthrow を使用するには、ページに overthrow.js を導入します:
次に、スクロールバーのコンテンツ div に overthrow クラスを追加します。
上記は nanoscroller プラグインの使用方法についてです。気に入っていただければ幸いです。