2014-03-02 14 views
1

我想做兩件事......當我們觸摸屏幕並且當我們從屏幕釋放手指的時候做一些事情。但是下面的touchend函數甚至在釋放我的手指之前觸發警報盒。我錯了 ?Jquery touchend在釋放手指之前發射

$(window).on('touchend', function(e){ 
alert("finger released"); 
}); 



$(window).on('touchstart', function(e){ 
//touch started 
}); 

回答

0

這實際上是webkit中的known bug。如果它適合您的需求,請嘗試使用touchmove,或者touchcancel有時會替代touchend而被解僱。順便說一句,它在Firefox上運行良好(至少在Android上,我甚至不知道FF是否存在於iOS上)。

編輯

什麼,你也可以做與preventDefault();玩弄於touchstart事件,但它說,通過它的名字,它可以防止默認行爲,所以再次,這取決於你的需求。

+0

hmm touchmove甚至沒有觸發.... preventDefault()也沒有幫助 – Vishnu

+0

我需要像keydown和keyup之類的東西...所以在touchstart它應該繼續調用函數...並在touchend它應該警惕....我正在嘗試創建一款遊戲。 – Vishnu

+0

像按下按鈕?在這種情況下,你可以嘗試把一個標誌......我想你會必須找到一個解決辦法... :(你有沒有試過'touchcancel'?爲什麼'的preventDefault()'沒有幫助? –