2

我正在尝试在启用触摸事件的情况下启动 Chrome 浏览器,但是当它总是在禁用触摸事件的情况下进行统计时(触摸事件不起作用并且“开发工具”-> 设置-> 中未选中“模拟触摸事件”复选框覆盖)
我的代码是:

ChromeOptions opt = new ChromeOptions();
opt.addArguments("touch-events"); 
WebDriver driver = new ChromeDriver(opt);

有没有办法在启用触摸事件的情况下启动 Chrome?

4

2 回答 2

0

我认为你混淆了两个设置。首先是浏览器是否支持触摸事件 API。这由 -touch-events 标志控制(启用、禁用或自动,这意味着如果检测到触摸屏则启用)。当它为真时,您会看到,例如 ('ontouchstart' in window) 为真(并且存在许多其他属性/函数)。

其次,有一个 devtools 功能,可以从鼠标输入生成合成触摸事件。无论是否启用了敏感 API,这在技术上都有效(但如果某些触摸 API 不存在,但它们接收到触摸事件,某些网站可能会合理地混淆)。据我所知,没有办法启用开发人员工具并从命令行打开功能。

于 2013-04-25T15:31:44.267 回答
-1

这应该可以解决问题

opt.addArguments("--touch-events=disabled");

于 2017-03-28T19:25:03.843 回答