Сенсорное событие не работает в IOS7 Iphone

Я работаю над играми html5, и все работало хорошо в chrome, firefox, safari, Ipad IO6, android, но не работает в IOS7 и Iphone4. Событие касания не работает должным образом. даже просто «e.preventdefault» не может справиться с проблемой двойного касания, сохраняя увеличение и уменьшение масштаба. не похоже на другое устройство. у кого была такая же проблема??

это часть моего кода.. извините, я не могу написать слишком много.. у меня было соглашение о неразглашении

var ua = navigator.userAgent.toLowerCase();
var checks = Boolean(ua.match(/android/))||
             Boolean(ua.match(/ipod/))||
             Boolean(ua.match(/ipad/))||
             Boolean(ua.match(/tablet/))||
             Boolean(ua.match(/tablet pc/))

var touchable = checks && (typeof (document.ontouchstart) != 'undefined');
if(touchable){
    canvas.addEventListener('touchstart',mouseDown,false);  
    canvas.addEventListener('touchmove',mouseMove,false);   
    document.addEventListener('touchend',mouseUp,false);    
}else{
    canvas.addEventListener('mousedown',mouseDown,false);   
    canvas.addEventListener('mousemove',mouseMove,false);   
    document.addEventListener('mouseup',mouseUp,false); 
}

function getMousePos(evt)
{
    if(touchable && evt.touches.length>1)return;
    if(touchable)evt = evt.changedTouches[0];

    var rect = canvas.getBoundingClientRect();
    return {
        x: (evt.clientX - rect.left) / game.scale.x,
        y: (evt.clientY - rect.top) / game.scale.y
    };
}

function mouseDown(e)
{
var mousePos = getMousePos(e);
alert(mousePos.x + "," + mousePos.y);
e.preventDefault();
}

person Rendi K    schedule 19.11.2013    source источник


Ответы (1)


Я определенно столкнулся с этой проблемой при тестировании приложений телефонной связи на iPhone4 под управлением iOS7. Я убрал задержку в 300 мс с помощью fastclick.js, установил все переходы на 0, убрал задержку при наведении, и при прокрутке по-прежнему была значительная задержка. К сожалению, проблема, по-видимому, напрямую связана с аппаратным обеспечением iPhone4, пытающимся запустить iOS7. Технически, хотя iOS7 доступна на iPhone4, iOS7 не разрабатывалась для iPhone4.

person Mayhaffs    schedule 29.11.2013