Intereting Posts
Попытка записать звук, но получение сообщения «mediarecorder ушел с необработанными событиями» и «Фатальный сигнал 11 (SIGSEGV) …» Android: как загрузить KML Android, AdMob: обновление объявлений AdMob снижает частоту кадров Как установить размер и размер текста в DP внутри программы? Ошибка SecurityException при вызове WifiManager startScan ViewPager отключает прокрутку в определенном направлении Перекрытие просмотров в Android Как получить уровень заряда аккумулятора после подключения к устройству BLE? Получение и обработка словаря <string, List <string >> из мыла с использованием KSoap2 Как издеваться над PreferenceManager в Android? Вычислить потребляемую мощность Android-датчика Анимация изменения макета нижнего листа Сериализация в массив байтов бросила исключение IOException (никогда не должно происходить) Невозможно разрешить целевую «андроид-8» после импорта библиотек Activity-Alias ​​удаляется при обновлении приложения

Android / phonegap – время отклика кликов медленное

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

Вот мой код: JAVASCRIPT:

var b=document.getElementById('STOP'),start=0; //Check for touchstart if('ontouchstart' in document.documentElement) { document.getElementById("notouchstart").style.display = "none"; } //Add a listener that fires at the beginning of each interaction [b].forEach(function(el){el.addEventListener('touchstart',interact);}); //Add the event handlers for each button b.addEventListener('touchstart',highlight); //Functions Store the time when the user initiated an action function interact(e) { start = new Date(); } //Highlight what the user selected and calculate how long it took the action to occur function highlight(e) { e.preventDefault(); e.currentTarget.className="active"; if(start) { alert("test") } start = null; } 

BODY BUTTONS (сначала отображает кнопку запуска, а затем при нажатии кнопки остановки останавливается, затем запускается снова и т. Д.).

  <INPUT TYPE="button" style="background:url(images/Start_Btn.png); background-color:transparent; width:150px; height:186px; border:none; cursor:pointer;" id="START" onClick="startBTN();"> <INPUT TYPE="button" style="background:url(images/Stop_Btn.png); background-color:transparent; width:150px; height:186px; border:none; cursor:pointer;" id="STOP"> 

Благодаря,

Solutions Collecting From Web of "Android / phonegap – время отклика кликов медленное"

Слушайте «touchstart» вместо «click» 🙂
Клик немного задерживается в сенсорных экранах. http://floatlearning.com/2011/03/developing-better-phonegap-apps/

Я использовал touchend для этого. touchstart , хотя действие – drag/scroll .

Не используйте кнопки. Если вы добавите событие в div, это будет быстрее.

Я работаю над калькулятором, и моя первая идея заключалась в том, чтобы начать с телефонного разговора. Теперь я настоятельно рекомендую не делать этого, когда нажатие на кнопки является критическим по времени. Даже при отключении всех дополнительных обработчиков touch и настройке touchstart непосредственно в div: это слишком медленно. (Touchhend не будет делать, кстати, это называется, когда вы отпустите палец с кнопки)

В приложении Phonegap событие click имеет время задержки в 300 мс. Почему бы вам не использовать библиотеку Fastclick для этой настойки ??? Я пробовал и отлично работает!

https://github.com/ftlabs/fastclick

Надежда полезна