Я пытаюсь выяснить, как работать с гибридными устройствами, когда дело доходит до привязки событий касания и кликов, но я не могу найти какое-либо решение, которое действительно работает (у меня нет гибридного устройства, поэтому я не могу тест, но поскольку неудачные попытки даже не работают на обычных устройствах, я полагаю, что они не работают на гибридном устройстве).Как правильно управлять гибридными устройствами в событиях щелчка/касания?
Проблема в том, что на гибридном устройстве вы должны покрывать как события касания, так и щелчки, не запуская функции дважды. Поэтому, если вы посмотрите на мои неудачные попытки (2 и 3), вы увидите, что я привязываюсь к touchend
и click
, но, похоже, какая-то синтаксическая ошибка или что-то еще, потому что это не приводит к тому, что ни одно из событий не срабатывает.
Первое решение работает нормально, но это то, когда я просто использую тот или иной тип стрельбы.
То, что я пытался до сих пор:
- Работает на сенсорных устройствах и нажмите устройства:
_renderer.listenGlobal('document', 'ontouchstart' in window ? 'touchend' : 'click', (e) => {
console.log('works');
});
- Не срабатывает на тонально или нажмите устройства:
_renderer.listenGlobal('document', 'touchend click', (e) => {
console.log('works');
e.stopPropagation();
});
- не срабатывает на любой коснитесь или нажмите устройство:
_renderer.listenGlobal('document', 'touchend, click', (e) => {
console.log('works');
e.stopPropagation();
});
Как вы можете видеть, что первый пример охватывает 2/3 типов устройств, в то время как другие из них покрывает 0.
Как я могу убедиться, что мои функции будут работать должным образом на каждом устройство?
Я заинтригован, я проверю это более подробно. – Chrillewoodz