手機(jī)設(shè)備上touchstart與click的區(qū)別和click事件經(jīng)歷過程
發(fā)布時間:2019/1/10 11:57:00 作者:Admin 閱讀:452
廣告:
1.基本定義
touchstart 手指觸碰開始就能觸發(fā)
click
1.手指觸碰
2.手指未在屏幕上移動
3.在這個dom上手指離開屏幕
4.觸摸和離開屏幕之間的時間間隔較短
因此,click事件有其獨(dú)特的地方,不能完全用touchstart替代。
2.click延時問題
因為手機(jī)瀏覽器上,兩次輕觸是放大操作,在第一次被輕觸后,瀏覽器需要先等一段時間,檢測是否有第二次連續(xù)觸碰,才會觸發(fā)click時間,click時間通常會延遲300ms左右。
解決方法:在touchstart和touchend時記錄時間和手指位置,在touchend時進(jìn)行比較,如果手指為同一位置且時間很短,且期間未觸發(fā)touchmove時間,則可以認(rèn)為觸發(fā)click時間,即為tap事件
移動端有四個關(guān)于觸摸的事件,分別是touchstart、touchmove、touchend、touchcancel(比較少用), 它們的觸發(fā)順序是touchstart-->touchmove-->touchend-->click,所以touch事件觸發(fā)完成后會接著觸發(fā)click事件
廣告:
相關(guān)文章