【发布时间】:2021-04-07 17:23:06
【问题描述】:
我需要在 Javascript 中调度事件点击事件,但它需要被浏览器信任。 DispatchEvent 和 element.click() 触发事件,但 isTrusted 为假,因此我的处理程序无法执行所有所需的操作。有什么办法吗?
【问题讨论】:
标签: javascript dom-events
我需要在 Javascript 中调度事件点击事件,但它需要被浏览器信任。 DispatchEvent 和 element.click() 触发事件,但 isTrusted 为假,因此我的处理程序无法执行所有所需的操作。有什么办法吗?
【问题讨论】:
标签: javascript dom-events
您不能设置isTrusted,因为它只是只读的。一种解决方法是找出提供的代码的哪一部分使用了它,然后简单地删除 if 语句或检查此属性的任何逻辑。
【讨论】:
根据文档,无法更改 isTrusted 的值。
如果您尝试自动执行某些操作,则有一个不太好的解决方法... 用另一种语言编写程序/脚本来模拟鼠标单击 (只是为了不发送事件您的程序并被认为是受信任的) 并运行该脚本。
例如可以使用Pynput - python library点击传递给程序的坐标,使用node.js在本地运行脚本。
每当你想点击目标元素时,使用js获取该元素的坐标,并将其作为args传递给python脚本!
您可以参考this article从js和this pynput tutorial运行python脚本
【讨论】: