我正在開發跨平臺觸摸事件。 (刷卡等)他們在Android設備上工作,但對於iPad而言,touchstart事件發射兩次。iPad touchstart發射兩次
this.element.addEventListener('touchstart', mousedown, false);
var mousedown = function(event) {
// Finger Press
event.preventDefault();
_this.inGesture = true;
_this._originalX = (event.touches) ? event.touches[0].pageX : event.pageX;
_this._originalY = (event.touches) ? event.touches[0].pageY : event.pageY;
};
此功能在iPad上觸發兩次,但在Android上正常工作。
我應該補充說,它觸發touchstart,然後touchmove,然後touchend,最後它由於某種原因做了另一個touchstart。
這是對的jsfiddle:http://jsfiddle.net/6Lb3Z/1
截圖:http://i.imgur.com/GS8uI.png
我只是測試了我的iPad,它觸發一次 - http://jsfiddle.net/Kai/N7NA5/ – Kai 2012-03-20 17:20:02
好感謝爲,這個問題必須在別處。這裏是JSFiddle:http://jsfiddle.net/6Lb3Z/ – Jasard 2012-03-20 17:32:44
我更新了小提琴在jsfiddle上正確運行;我仍然看到只有一個touchstart調用:http://www.jsfiddle.net/6Lb3Z/1/我使用iOS5的iPad2。截圖http://i.imgur.com/Oz5z4.png – Kai 2012-03-21 00:40:15