簡體   English   中英

防止iOS捏事件注冊為點擊

[英]Prevent iOS pinch event from registering as a click

我已經在Web應用程序中實現了全屏圖像查看庫。 我將為您保留所有詳細信息,但關鍵的交互作用之一是單擊全屏圖像以轉到下一個圖像。 這對於單擊設備以及用戶點擊圖像的觸摸設備都適用。 兩者都作為點擊事件接收,我在我的JavaScript中處理以加載下一張圖片。

至於觸摸設備(例如iPad),我喜歡用戶可以捏合以進一步放大圖像。 但是,當他們松開捏手勢(通過舉起手指)時,此手勢將注冊為單擊事件,將加載下一張圖像。 不好,因為他們想縮放,所以不要轉到下一張圖像。

因此,我正在尋找一種方法來處理收縮事件並防止它們觸發點擊事件。 捏手勢僅應縮放,而不能注冊為單擊。

有人知道這樣做的方法嗎?

您可能可以使用onmousedownonmouseup代替單擊。 如果所有其他方法均失敗,則可以記錄這兩個事件之間的距離,如果超過某個閾值(即可能是捏手勢),則可以忽略它

我當然假設捏會同時注冊onmousedownonmouseup ,但可能不會。 但是,如果沒有,您可以使用不注冊的任何事件代替點擊

Apple處理手勢和觸摸事件的文檔https://developer.apple.com/library/ios/#documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html

您要關注的命令是touchEnd和gestureEnd。 也許像在手勢結束時返回false一樣? (我不是程序員,但希望這可以使事情順利進行,並且您可以弄清楚。)

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM