loadURI()和#FF addon

时间:2011-04-27 11:57:08

标签: firefox browser firefox-addon

我正在开发一个Firefox插件,以加快搜索速度。我正在使用loadURI来加载URL。我遇到的是有时Firefox不会加载最新的请求。

示例:

getWebNavigation().loadURI("http://www.google.com/", (nsIWebNavigation.LOAD_FLAGS_IS_LINK), null, null, null);

getWebNavigation().loadURI("http://www.google.com/#5555", (nsIWebNavigation.LOAD_FLAGS_IS_LINK), null, null, null);

如果您执行它,它将首先加载http://www.google.com/#5555;以及所有其他请求它将加载google.com。

nsIWebNavigation.LOAD_FLAGS_IS_LINK是Google无需重新加载图片和JavaScript的必要条件。绕过缓存可以工作但是它有一个问题,即页面总是被更新。

我正在寻找一种方法来提供最新的请求优先级,同时不重新加载图像和的JavaScript。

在您回答之前,以下标志无法解决问题:

LOAD_FLAGS_STOP_CONTENT (STOP_NETWORK, STOP_CONTENT, STOP_ALL),...
LOAD_FLAGS_FIRST_LOAD

1 个答案:

答案 0 :(得分:0)

http://www.google.com/的原始loadURI开始尝试加载。但是,您的http://www.google.com/#5555的立即加载会中断加载并开始加载http://www.google.com/#5555,然后继续加载。

加载http://www.google.com/#5555后,您再发出http://www.google.com/次加载,但这次http://www.google.com/#5555的后续加载仅执行锚点滚动(无论当前页面是否为{ {3}}或http://www.google.com/),它不会干扰随后完成的http://www.google.com#5555的加载。