iScroll скрыть / показать полосу прокрутки

Я пытаюсь реализовать функцию наведения на моем iScroll div, где я могу показать / скрыть полосу прокрутки. Я бы хотел, чтобы пользователь наводил курсор на элемент div, чтобы появилась полоса прокрутки, а когда пользователь убирает мышь с контейнера, полоса прокрутки исчезает.

Я изучал это, чтобы увидеть, возможно ли это, но еще не повезло, пытаясь найти решение. Я обнаружил, что в iScroll есть параметр hideScrollbar, который можно установить при инициализации нового объекта iScroll, но я не совсем уверен, как динамически устанавливать этот параметр на основе взаимодействия пользователей с контейнером прокрутки.

Любая помощь будет принята с благодарностью.

2 ответа

Код ниже даст то, что вы хотите.:) (Протестировано для рабочего стола, Android и iOS);

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

Это та же самая строчка с vletech, которая говорилась до 112-113.

Я не могу найти параметр hideScrollbar как вы упоминали выше, но простой способ обойти это - добавить собственную анимацию затухания.

Например

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

Но это может вызвать некоторые проблемы, если вы ожидаете, что это будет отображаться на мобильных устройствах.

РЕДАКТИРОВАТЬ

Измените строку 35 на.

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

РЕДАКТИРОВАТЬ 2 Думая об этом снова лучше было бы оставить строку 35, как она есть (/iphone|ipad/gi), Но измените строки 112 и 133 на...

hideScrollbar: isIDevice && !isIDevice,
fadeScrollbar: isIDevice && !isIDevice && has3d,
Другие вопросы по тегам