gpt4 book ai didi

javascript - iScroll:隐藏指示器时隐藏滚动条

转载 作者:行者123 更新时间:2023-12-03 23:15:49 28 4
gpt4 key购买 nike

我有一个带有交互式滚动条的水平 iScroll 实例。

    myScroll = new IScroll('#wrapper', { 
scrollX: true,
scrollY: false,
mouseWheel: false,
scrollbars: 'custom',
interactiveScrollbars: true,
resizeScrollbars: false,
bindToWrapper: false,
click: true,
fadeScrollbars: true,
});

我希望它的滚动条在 iScroll 使指示器隐藏时隐藏 (display: none)我注意到,当它检测到由于缺少要滚动的幻灯片/元素而不需要滚动时,它会更改指示器的 css display 属性。

这通常发生在我将浏览器从小视口(viewport)调整为大视口(viewport)时。

fadeScrollbars 并不是我想要的,因为它隐藏了滚动条和指示器,即使它仍然可以滚动。

如何配置 iScroll 在指示器隐藏时不显示滚动条?

有什么解决方法吗?

最佳答案

这个问题是很久以前添加的,但我通过向库中添加一些额外的代码解决了这个问题 - 在 v5.1.3 中,我发现方法刷新在开头是一些“if 条件”:

if ( this.options.listenX && !this.options.listenY ) {
this.indicatorStyle.display = this.scroller.hasHorizontalScroll ? 'block' : 'none';
} else if ( this.options.listenY && !this.options.listenX ) {
this.indicatorStyle.display = this.scroller.hasVerticalScroll ? 'block' : 'none';
} else {
this.indicatorStyle.display = this.scroller.hasHorizontalScroll || this.scroller.hasVerticalScroll ? 'block' : 'none';
}

改为

if ( this.options.listenX && !this.options.listenY ) {
this.indicatorStyle.display = this.scroller.hasHorizontalScroll ? 'block' : 'none';
this.wrapper.style.display = this.scroller.hasHorizontalScroll ? 'block' : 'none';
} else if ( this.options.listenY && !this.options.listenX ) {
this.indicatorStyle.display = this.scroller.hasVerticalScroll ? 'block' : 'none';
this.wrapper.style.display = this.scroller.hasVerticalScroll ? 'block' : 'none';
} else {
this.indicatorStyle.display = this.scroller.hasHorizontalScroll || this.scroller.hasVerticalScroll ? 'block' : 'none';
this.wrapper.style.display = this.scroller.hasHorizontalScroll || this.scroller.hasVerticalScroll ? 'block' : 'none';
}

关于javascript - iScroll:隐藏指示器时隐藏滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24549523/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com