【发布时间】:2012-02-27 07:56:32
【问题描述】:
我正在尝试使用 addon-sdk 将 Chrome 插件移植到 Firefox,但我找不到监听选项卡导航事件的等效方法。
我需要做的是保留每页的数据(从 DOM 中检测到),并在用户导航到选项卡中的新页面时立即删除它(但是,保持刷新时的数据)
我是 Chrome,当标签更改 URL 时,我可以使用:
chrome.tabs.onUpdated.addListener(function(tab_id, changeInfo, tab) {
if(changeInfo.status == 'loading' && changeInfo.url) {
//DO STUFF AS THE URL CHANGED
}
});
在 Firefox 中使用我尝试过的插件 SDK:
tabs.on('open', function(tab){
tab.on('ready', function(tab){
if(tab.cachedURL != tab.url) {
//DO STUFF AND SET CACHE
}
});
});
问题是我无法挂钩初始导航事件,因此在用户开始导航和准备好新页面的 DOM 之间,旧数据可用。
基本上,我需要一种方法来挂钩选项卡的初始导航,并在理想情况下查看它的去向(就像我在 Chrome 中一样)。
有什么想法吗?
【问题讨论】:
标签: javascript firefox-addon firefox-addon-sdk