移動端touch事件影響界面click/超連接事件沒法點擊

觸摸事件:html

三種在規範中列出並得到跨移動設備普遍實現的基本觸摸事件:vue

1.touchstart:手指放在一個DOM元素上。session

2.touchmove:手指拖曳一個DOM元素。ide

3.touchend:手指從一個DOM元素上移開。動畫

每一個觸摸事件都包括了三個觸摸列表:spa

1.touches:當前位於屏幕上的全部手指的一個列表。htm

2.targetTouches:位於當前DOM元素上的手指的一個列表。對象

3.changedTouches:涉及當前事件的手指的一個列表。blog

例如,在一個touchend事件中,這就會是移開的手指。事件

這些列表由包含了觸摸信息的對象組成:

1.identifier:一個數值,惟一標識觸摸會話(touchsession)中的當前手指。

2.target:DOM元素,是動做所針對的目標。

3.客戶/頁面/屏幕座標:動做在屏幕上發生的位置。

4.半徑座標和rotationAngle:畫出大約至關於手指形狀的橢圓形。

 

這兩天本身在作一個移動端APP,要用到滑動觸發動畫的效果,作完以後發現滑動和動畫能夠順利完成,可是頁面其餘的超連接和click點擊事件卻沒法點擊了,用到的庫是zepto和vue。

以後排查發現問題多是出在event事件中,就把touchstart和touchend事件的默認行爲取消了(e.preventDefault()),取消後發現能夠點擊了,可是滑動效果大打折扣了,從右邊滑動回左邊的時候效果很是差,而後就上百度查,發現有一篇文章

https://www.cnblogs.com/lvmingyin/p/5372678.html

以後把阻止默認行爲添加到touchmove 就OK了。

相關的文章地址: http://caibaojian.com/mobile-touch-event.html

相關文章
相關標籤/搜索