MobileSafari(iOS Safari):有没有办法防止水平/垂直滚动;抓拍;?

MobileSafari(iOS Safari):有没有办法防止水平/垂直滚动;抓拍;?,ios,css,html,ipad,mobile-safari,Ios,Css,Html,Ipad,Mobile Safari,我有一个web应用程序,它可以显示2D图表的可滚动视图,我试图让用户更容易地让视图始终跟随手指 默认行为是,大多数滑动运动都会导致垂直或水平约束的移动,这对阅读文本很有帮助,但对我的用例没有太大帮助 编写自定义触摸事件代码以直接设置滚动是一种可能性,但这使得很难恢复滚动势头。此外,本机功能能够在幕后执行一些特殊的操作,如暂停JS操作和避免重新渲染,这有助于提高整体性能 是否有一种CSS样式可以控制方向控制行为?我还没有找到一种方法来指定该行为,但我发现,当我将手指向下放置而不移动它时,然后在一秒

我有一个web应用程序,它可以显示2D图表的可滚动视图,我试图让用户更容易地让视图始终跟随手指

默认行为是,大多数滑动运动都会导致垂直或水平约束的移动,这对阅读文本很有帮助,但对我的用例没有太大帮助

编写自定义触摸事件代码以直接设置滚动是一种可能性,但这使得很难恢复滚动势头。此外,本机功能能够在幕后执行一些特殊的操作,如暂停JS操作和避免重新渲染,这有助于提高整体性能


是否有一种CSS样式可以控制方向控制行为?

我还没有找到一种方法来指定该行为,但我发现,当我将手指向下放置而不移动它时,然后在一秒钟后开始移动它,它将允许我向所有方向滚动


也许可以看看是否或类似的东西对你有用,因为它包含动量,你可以明确指定是否要锁定方向。

你可以使图表溢出页面大小:

#diagram{
    width: 2000px;
}
所有其他部件应固定:

#menu, etc{
    position: fixed
}
通过这种方式,您可以使用页面本身的滚动,它没有方向限制

要防止iPad调整内容大小以适应设备宽度,请在
中添加以下内容:



我从不止一个人那里听说,长时间握住手指会触发这种情况,但每当我测试这种情况时,情况并非如此。在我看来,只考虑初始运动的方向。我可以按住它直到选择功能弹出之前,然后直接向下移动,然后在剩余的触摸中垂直约束它。我的怀疑是,用户更倾向于在稍长的抓地力之后进行对角线拖动。嗯,我想你是对的。我只是更仔细地测试了一下,似乎我可以向所有方向滚动,只要我的滑动不在水平轴或垂直轴的一定范围内,无论我的初始触摸有多长或短。请澄清,你想要动量还是不想要?我确实想要动量。我不想要方向约束。你们的页面只包含图表吗?这个答案并没有解决这个问题:除非你一开始小心地沿对角线方向移动手指,否则它会限制你的手指。默认情况下,“页面本身的滚动”有方向限制。
<meta name="viewport" content="initial-scale=1, user-scalable=no, width=2000px">