回答

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