Событие onClick в веб-браузере Android слишком медленное - PullRequest
3 голосов
/ 08 февраля 2011

У меня такое ощущение, что сам javascript довольно быстр в веб-обозрении andorid, но между прикосновением к элементу и запуском события onclick существует большая задержка.

Я мог бы представить, что это функция, если вы перемещаетесь между страницами - сначала вы видите выделение элемента, а затем вы видите эффект (навигацию). Но для приложений это слишком медленно.

Есть ли способ изменить это поведение?

Или есть еще одно событие, на которое я должен пойти, например onHover или onTouch? Что-то, что срабатывает раньше, чем onClick?

Ответы [ 2 ]

3 голосов
/ 23 июля 2014

Это известная проблема, связанная с 300 мс из-за постукивания / увеличения пользователя на дисплее:

http://updates.html5rocks.com/2013/12/300ms-tap-delay-gone-away

В ближайшем будущем это, кажется, будет решено в макетах статического размера, добавив информацию в заголовок. Но реальная версия webkit не имеет / учитывает эту опцию.

В моем случае решением было использовать Tappy lib:

https://github.com/filamentgroup/tappy

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

Еще один момент: я установил таймер на 100000 мс (по умолчанию: 1000 мс), чтобы избежать повторения событий в некоторых конкретных случаях.

0 голосов
/ 10 февраля 2011

Полагаю, я нашел ответ ...

Если вы посмотрите на jQuery mobile, вы найдете событие касания.Это работает мгновенно - именно так, как мне нужно.

Если заглянуть глубже в источник, я обнаружил, что для события tap используется mousedown ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...