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,