不能依赖chrome.tabs.move中的索引

kl1*_*123 5 javascript tabs google-chrome-extension

我有这样的标签:

  • 标签A.
  • 标签B.
  • 标签C.
  • 标签D.
  • 标签E.

在我使用的标签C之后移动标签A.

chrome.tabs.move(tabA.id, {'index': tabC.index+1});
Run Code Online (Sandbox Code Playgroud)

但是我在标签D之后得到它
如果我在列表中向下移动任何标签,它可以正常工作,但如果"向上"标签向下移动,索引会变得混乱(上部标签从索引列表中删除,目标索引关闭) 1)
我是否需要以某种方式比较移动的标签索引和目标索引,并根据计算结果索引(如果A <C)或更容易解决此问题?

eri*_*old 0

我在选项卡 D 之后得到它

这是因为您尝试移动到tabC.index+14,然后删除选项卡 A,结果是B, C, D, E移动到索​​引 4,结果B, C, D, A, E是 D 之后是 A。这有意义吗?

因此,如果您希望在选项卡 C 之后移动的选项卡位于选项卡 C 之前,则不要使用该+1位,否则应该使用它。