iScroll带有可拖动的桌面浏览器滚动条



我想让我的网页使用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期(现已关闭(

相关内容

最新更新