小编dye*_*ray的帖子

监听器在将其加载到Mozilla SDK之前更改URL

我想尝试类似于对mozilla sdk上的位置栏进行拼写错误修正.用户在位置栏上输入一个URL,并在加载之前进行更改.我试过了:

如看到SDK/pagemod 这里.问题是它在页面开始渲染时运行,而不是在开始下载之前运行.

sdk/tabs =>它没有在开始加载网站之前调用的事件.

以上就是我发现会抓住用户试图进入的网站.我也找到了sdk/system/events,但我发现我唯一可以使用的事件是http-on-modify-request,这确实捕获了每个http请求.问题是,您无法修改该请求的网址.

为了解决这个问题,我见过两个选择:

这个插件的方式 =>获取当前选项卡并在那里加载新的URL.问题很明显,请求可能不是来自用户尝试加载的URL,而是来自页面html中的url.我尝试将请求URL与tabs.activeTab.url进行比较,但是在发送http-on-modify-request事件后它会被设置.

或者这里解释的解决方案我不确定是否可行(这不适用于mozilla sdk).

所以基本上我现在的问题可以解决:

- 在开始加载和更改它之前从位置栏捕获URL的方法(我在sdk上没有看到任何内容)或者 - 知道何时请求对应于用户尝试加载的网站的方式在位置栏或-a方式修改请求(网址)

firefox firefox-addon firefox-addon-sdk

5
推荐指数
1
解决办法
1340
查看次数

标签 统计

firefox ×1

firefox-addon ×1

firefox-addon-sdk ×1