我在d3.zoom
中没有发现这方面的任何信息,但在谷歌、Chrome和Mozilla中,一个区域的缩放显然是有效的,但在或Edge中却不起作用。这在官方演示中已经可以看到:https://bl.ocks.org/mbostock/d1f7b58631e71fbf9c568345ee04a60e
当做捏时,放大IE11/Edge,然后会触发页面缩放,这可以使用-ms-content-zooming: none
(奇怪地说不是touch-action
)禁用,但这不是我想要的。
我的评估正确吗?有什么可以做的吗?可能存在一些聚脂吗?
发布于 2017-10-19 14:12:30
在d3页面上,似乎有一个长期存在的错误报告(从2013年开始):
https://github.com/d3/d3/issues/989
从源代码看,d3似乎使用了events touchstart.zoom
、touchmove.zoom
、touchend.zoom
和touchcancel.zoom
。
据我在互联网上可以找到的,IE不支持那些触摸事件完全没有,而边缘只支持它的如果设备没有键盘。如果是这样的话,它需要是手动启用。
因此,您不能依赖触摸事件来正确处理IE或Edge中的d3。
但是,有相当多的填充物旨在纠正这一问题。由于我没有任何支持触摸的Windows设备,所以我无法测试这些设备是否正确工作,但也许可以尝试如下:
https://stackoverflow.com/questions/46791165
复制相似问题