检测 macOS 中真实与“假”的浏览器滚轮事件

问题描述 投票:0回答:1

背景:在网站上滑动触控板时,macOS 会生成合成“滚轮”事件。这是为了模拟物理旋转鼠标滚轮的行为。对于我的应用程序,我需要以概率或其他方式知道给定事件是用户发起的还是合成的。没有 Web api 可以做到这一点,所以我需要做一些信号处理。

下面是鼠标“滚轮”事件的图,其中 x 轴是时间,y 轴是速度。正如您所看到的,用户发起手势的区域会产生明显的速度尖峰,然后是速度的噪声多项式衰减。由于这种衰减是有噪声的,因此很难判断一个事件是对应于新的交互,还是合成的操作系统事件。

如何分析这些数据以确定该事件是用户发起的还是合成的?

javascript macos signal-processing
1个回答
0
投票

我多年来一直面临同样的问题。对于游戏控制器或更好的轮播,如果能够访问轮盘事件是否是由用户触摸鼠标或触控板调度的,而不是系统自动生成的,那就太好了。

最好的解决方案是等待 Mac 或 W3C 让浏览器附加该数据,但我不相信这种情况会很快发生,但我确实认为您的图表已经有了一些进展。今天,我们可以使用机器学习来预测事件是真是假。

有关更多信息,请参阅我对此问题的回复: https://github.com/w3c/uievents/issues/58

© www.soinside.com 2019 - 2024. All rights reserved.