abu*_*lka 7 vis.js vis.js-network
我有一个由 vis.js 创建的大型网络图,它在浏览器中是 100% 宽并且非常高,因此需要向下滚动页面才能看到全部内容 - 我希望我的页面像世界上大多数其他网页一样运行 - 但是当我滚动时,vis.js 会缩放,而不是滚动页面。如何关闭滚动缩放,但仍允许捏合(或按住按键 + 滚动)?
当然,我可以使用此选项关闭缩放 - 并添加一些内置缩放按钮:
var options = {
interaction: {
zoomView: false,
navigationButtons: true,
}
};
Run Code Online (Sandbox Code Playgroud)
但这并不理想。它要求用户滚动到页面底部才能访问缩放控件。另外,我想要一个更易于访问的缩放功能(是的,我知道,我刚刚关闭了更易于访问的缩放功能)。可见时间线图似乎比网络图有更多的缩放方法。
总结一下:我希望对图表禁用鼠标滚轮/触控板滚动,从而提供自然的整个页面滚动行为,再加上捏合(或按住按键+滚动)进行缩放。
我不认为有一些特定于网络的解决方案。您必须检测鼠标滚动并相应地处理它,如下所示:
container.addEventListener("wheel", function(e){
if (e.stopPropagation) e.stopPropagation();
return false;
})
Run Code Online (Sandbox Code Playgroud)
为了支持旧浏览器,您应该使用 DOMMouseScroll和mousewheel事件。
不幸的是,我手边没有鼠标,所以无法真正为您测试这一点,但这里有一个游乐场,您可以自己执行此操作: https: //jsfiddle.net/9m433scr/8/
| 归档时间: |
|
| 查看次数: |
1748 次 |
| 最近记录: |