События касания сводят меня с ума - PullRequest
2 голосов
/ 17 сентября 2011

Я читал кое-что о прикосновении, но не могу до него добраться полностью.У меня есть приложение, в котором я блокирую все сенсорные события в документе.

document.addEventListener('touchstart', function (e) { e.preventDefault(); }, false);
document.addEventListener('touchend', function (e) { e.preventDefault(); }, false);

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

<form onsubmit="search(event)">
    <input id="q" type="text" placeholder="Search.." />
</form>

Блокировка касания документа очень нужна.Как я могу исправить проблему, и, пожалуйста, если вам известно какое-либо руководство, подробно описывающее события касания, которое было бы замечательно.

1 Ответ

1 голос
/ 17 сентября 2011

Прямо сейчас вы блокируете ВСЕ сенсорные события, но вы действительно хотите заблокировать все сенсорные события, КРОМЕ: x, y и z;

Вам просто нужно сделать preventDefault() условным.

, например

document.addEventListener('touchstart', function (e) {
    e=e||window.event;
    var recip=e.target||e.srcElement;
    if(recip.nodeName.toLowerCase()=='input'){return true;}
    e.preventDefault();
}, false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...