该扩展设计为当您单击固定选项卡时,它将其移动到所有固定选项卡中最右侧的位置。它的工作原理前几次我不断收到问题:tabs.move期间如何在最后一个固定标签后移动标签?
错误:标签不能马上编辑(用户可能 拖动标签)。 chromeHidden.handleResponse
虽然我使用调试器,但它每次都能正常工作。
代码:
chrome.tabs.onActivated.addListener(function(tab) {
chrome.windows.getAll({"populate":true}, function(windows) {
var tabs = [];
for (var i = 0; i < windows.length; i++) {
var win = windows[i];
if (win.id == tab.windowId) {
tabs = win.tabs;
for (var k = 0; k < tabs.length; k++) {
var tempTab = tabs[k];
if (tempTab.id == tab.tabId && tempTab.pinned == true) {
for (var j = k; tabs[j+1] && tabs[j+1].pinned; j++) {
chrome.tabs.move(tab.tabId, {"index":j+1});
}
break;
}
}
}
}
});
});
可能重复[调用chrome.tabs.query后,结果是不可用(http://stackoverflow.com/questions/11688171/after-calling-chrome-tabs-query-the-results - 不可用) – 2013-04-20 20:10:38
@RobW我明白了。这个问题必须由我误解异步和同步。谢谢。 – vturlington 2013-04-20 20:29:03
很高兴有帮助。 – 2013-04-20 20:29:32