我想让我的网页使用iScroll4,对桌面(linux、mac或pc(浏览器用户来说更好一点。我想将可拖动的滚动条添加到iScroll组件中,并隐藏默认指示器。或者,如果可以以某种方式更改默认指示器以接受点击和拖动,那也太好了。
到目前为止,我已经以这种方式更改了iScroll事件处理程序:
来自:
case MOVE_EV: that._move(e); break;
case END_EV:
至:
case MOVE_EV: that.disable(); break;
case END_EV: that.enable(); break;
之所以进行此更改,是因为如果不这样做,iScroll元素中的向下拖动会将页面滚动到错误的方向。
现在我在iScroll元素中显示实际滚动条时遇到了一些严重的问题。添加:
overflow:scroll;
到包含iScroll的div,使滚动条仅在几分钟内可见,并且仅在鼠标滚动后可见。滚动条随后逐渐消失。
如果有人有什么好主意,如何改变iScroll.js文件,使iScroll能够真正改变自己,使其具有可拖动的滚动条,那将是非常棒的。
我还想指出的是,我希望保留以默认方式使用iScroll的选项,用于支持触摸的设备,并仅更改桌面浏览器的默认行为。
我找到了ZoranJambor在github:上制作的解决方案
https://github.com/ZoranJambor/iscroll
他的iScroll有一个额外的参数draggableScrollbars,如果你想拥有可拖动的滚动条,可以将其设置为true。
另请参阅以下示例:
https://github.com/ZoranJambor/iscroll/tree/master/examples/draggable-scrollbars
谢谢你,希望这也能帮助其他人——我花了整整两天的时间寻找解决方案。
BR!
在iScroll 5中,有一个名为interactiveScrollbars
的选项,它使滚动条">可拖动,用户可以与之交互":http://iscrolljs.com/#scrollbars
请注意,此选项默认设置为false
,因此为了启用它,您需要将其明确设置为true
,例如:
var someElementWrapper = document.getElementById('some-element-wrapper');
new IScroll(someElementWrapper, {scrollbars: true, interactiveScrollbars: true});
这件事也被报道为第342期(现已关闭(