Javascript Google Chrome tab ID在tab';生命周期

Javascript Google Chrome tab ID在tab';生命周期,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在实现一个处理标签的Google Chrome扩展。这包括我获取onCreated、onUpdated和onActivated。每次,我都在逻辑中使用tabId,在处理onCreated事件期间,它最初存储在一个数组中。原则上,一切正常 然而,我注意到了一个小故障。有时,现有选项卡的ID会更改。因此,选项卡的ID不在我的数组中,这自然会导致错误。我可以在以下用例中重现此问题: 使用不同的URL打开2个或多个选项卡 在一个选项卡中加载已加载到另一个选项卡中的URL 在这种情况下,会发生两件

我正在实现一个处理标签的Google Chrome扩展。这包括我获取
onCreated
onUpdated
onActivated
。每次,我都在逻辑中使用
tabId
,在处理
onCreated
事件期间,它最初存储在一个数组中。原则上,一切正常

然而,我注意到了一个小故障。有时,现有选项卡的ID会更改。因此,选项卡的ID不在我的数组中,这自然会导致错误。我可以在以下用例中重现此问题:

  • 使用不同的URL打开2个或多个选项卡
  • 在一个选项卡中加载已加载到另一个选项卡中的URL
在这种情况下,会发生两件事:首先,T触发的不是
onUpdated
事件,而是
onActivated
事件。其次,T现在有了一个新的ID,通常增加2

在我看来,这与直觉相去甚远。我甚至会称之为虫子。有人知道这是怎么回事吗


任何提示都将不胜感激

这可能是由以下原因引起的。这可以通过收听或事件来检测。

哇,太快了!你是对的,这是预渲染。如果我用
googlechrome--prerender from omnibox=disabled启动Chrome,一切都会正常工作。而且
chrome.webNavigation.onTabReplaced
事件也会被触发。我希望我能调整它,使之满足我的需要。无论如何,非常感谢!