我希望能够在调用touchStart事件时模拟isTrusted = true。是否有任何种类的库或解决方法使之成为可能?
这是我以编程方式运行touchStart与实际调用touchStart时的输出。
我正在使用移动浏览器。根据this网站的说法,移动浏览器不支持该功能,但由于输出显示该事件的存在,所以它不是正确的。任何帮助/建议对此将不胜感激。谢谢。
最佳答案
不可能。通过脚本触发的事件将始终被标记为不可信(除非使用IE)。这是出于安全原因。换句话说,event.isTrusted === false
(如果通过脚本调用)。
有关更多信息,请阅读this.
可以肯定的是,您已经获得了这些结果,但是这里有一个点击示例。请注意,第一个控制台消息是false,这是脚本调用的消息:
const element = document.querySelector('div');
const scriptEvent = new Event('click');
element.addEventListener('click', event => console.log(event.isTrusted));
element.dispatchEvent(scriptEvent);
<div>CLICK HERE</div>