我试图找出如何处理混合设备,当涉及到绑定触摸和点击事件,但我找不到任何解决方案似乎工作(我没有混合设备,所以我不能直接测试,但由于失败的尝试甚至不能在普通设备上工作,所以我认为它们不能在混合设备上工作)。如何正确处理点击/触摸事件中的混合设备?
问题是,在混合设备上,您必须同时覆盖触摸和点击事件,而不是两次触发功能。所以,如果你看看我的失败尝试(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