我正在开发一个FF扩展程序,它在第三方网站上显示用户特定信息。用户需要登录我的Drupal网站。我正在使用跨域证明jQuery.ajax()来检查登录状态。如果用户未登录,FF扩展程序将打开一个弹出窗口(window.open()),显示Drupal登录/注册/密码丢失页面(/ user / login)。
现在,我希望此窗口关闭,并且只要登录(注册/密码请求)成功,FF扩展就会继续。而现在我迷路了......我怎么会这样做?
我知道如何从我的FF-addon(window.close())关闭弹出窗口,但我不知道如何告诉插件,何时这样做。我想过轮询登录状态。但那似乎有点笨拙,不是吗? 我也尝试在成功登录(登录目标模块)后将drupal页面重定向到自动关闭页面,但在较新的浏览器中,window.close()仅适用于使用相同脚本创建的窗口。然后我仍然需要找到一种方法告诉FF-addon继续。
其他人如何解决这个问题? 在此先感谢您的帮助!
答案 0 :(得分:1)
我没有关于Firefox扩展的信息,但您可以在弹出窗口onload
上收听window
事件来检测新的页面加载。如果成功登录的目标页面包含可从您的扩展程序访问的某个标记,则可以从onload
处理程序中查询此标记。
从您的扩展程序中捕获onload似乎可行,请参阅firefox extension. How to catch onload event?