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