0

スクロールバーを表示/非表示にできる iScroll div にホバー機能を実装しようとしています。ユーザーがdivの上にカーソルを置いてスクロールバーを表示させたいのですが、ユーザーがマウスをコンテナから離すとスクロールバーが消えます。

私はこれが可能かどうかを調べてきましたが、解決策を見つけようとしてもうまくいきませんでした。iScroll には、新しい iScroll オブジェクトを初期化するときに設定できる hideScrollbar パラメータがあることがわかりましたが、スクロール コンテナとのユーザー インタラクションに基づいてパラメータを動的に設定する方法が完全にはわかりません。

どんな助けでも大歓迎です。

4

2 に答える 2

2

The below code will give what you want. :) (Tested Desktop & Android & iOS);

hideScrollbar: !isIDevice || isIDevice || isAndroid,
fadeScrollbar: !isIDevice || isIDevice && has3d,

This is the same line with vletech said before 112-113.

于 2013-09-13T13:40:15.220 に答える
1

hideScrollbar上記のようにパラメーターが見つからないようですが、これを回避する簡単な方法は、独自のフェード アニメーションを追加することです。

例えば

$('#DivToHover').hover(
   function(){
      $('#ScrollBarDiv').fadeIn("fast");
   },
   function(){
      $('#ScrollBarDiv').fadeOut("fast");
   }
);

ただし、これがモバイル デバイスで表示されることを期待している場合、これはいくつかの問題を引き起こす可能性があります。

編集

35 行目を次のように変更します。

isIDevice = (/iphone|ipad|Mozilla/gi).test(navigator.appVersion),

EDIT 2 これについてもう一度考えると、35 行目はそのままにしておく方がよいでしょう(/iphone|ipad/gi)。ただし、112 行目と 133 行目を ... に変更します。

hideScrollbar: isIDevice && !isIDevice,
fadeScrollbar: isIDevice && !isIDevice && has3d,
于 2013-02-22T22:49:09.997 に答える