回答

13

在我的经验中,mousedownmouseupdragstartdragend事件代替touchstarttouchmovetouchend做工精细。

google.maps.event.addListener(myMap, "mousedown", function(event){...}); 

我敢肯定,gesture事件是不会得到支持,因为这些用于捏缩放功能。

如果你需要的手势,你必须通过跟踪鼠标按下事件,将它们存储在一个数组,然后跟踪位置来确定角度,距离等,以建立自己的识别......

0

他们目前尚未支持的。看到这里的交互式地图,显示当前可用事件的游行示威:

https://developers.google.com/maps/documentation/javascript/events#EventsOverview

此页还指出:

对于事件的完整列表,请参阅谷歌地图的JavaScript API 参考。

触摸相关事件不在该页面,因此它们不受支持。

谈到公认的答案,所支持的事件严格相等(触摸显然是从一个鼠标点击不同语义的),在我的经验结果可能是变量(例如,在某些情况下,触摸可能会导致在Google地图上发起onclick事件,并且在某些情况下可能会导致发生鼠标悬停事件),因此可能需要进行一些直通式处理,以便在将这些事件“借用”为可靠时处理这种类型的事件检测触摸。

下面是关于处理触摸与听众的好文章:

https://www.google.com.au/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ahUKEwiwm6y38dXXAhWHVbwKHRdUCY4QFggmMAA&url=https%3A%2F%2Fmedium.com%2F%40david.gilbertson%2Fthe-only-way-to-detect-touch-with-javascript-7791a3346685&usg=AOvVaw3pWv0R_AESWKqwF72D0hix

相关问题