Firefox插件 – 无法触发任何类型的点击事件

我正在开发一个firefox插件,它将自动填充登录表单字段并登录。 我可以访问的内容可以是id的类’或xpath到登录按钮,具体取决于网站提供的内容。 捕获的优先级通常是id(如果存在)。 不会触发点击的特定网站是: https : //login.paylocity.com/escher/escher_webui/views/login/login.aspx

我尝试使用$(element).trigger('click')$(element).click() ,它们都不会自动触发点击。 控制台日志中的错误显示:

XrayWrapper拒绝访问属性callee(原因:值可调用)。 有关更多信息,请参阅https://developer.mozilla.org/en-US/docs/Xray_vision 。 请注意,仅报告来自给定全局对象的第一个拒绝属性访问。

我也试过这里显示的Javascript方法: 是否可以通过JavaScript触发链接(或任何元素的)点击事件? 这也行不通。

XrayWrapper拒绝访问属性被调用者

这表明脚本在一个比页面内容本身具有更高权限的环境中运行,这反过来会导致一些安全障碍( xray包装器在一个方向上,访问被拒绝在另一个方向上),因为调用者现在是部分特权不允许访问内容的代码。

您可以尝试手动合成DOM事件并触发它,而不是使用jquery,可能是通过访问不安全的窗口。

new window.wrappedJSObject.MouseEvent("click") ,与dispatchEvent()相同。

或者,您也可以尝试在表单上触发提交事件而不是单击事件。

另一种方法是通过将调用函数移植到内容窗口中来使.callee可访问。