关于扩展

功能建议 · 33 次浏览
Kenhalid 创建于 28天0小时前

老大您好,这个扩展既然会记录上次使用的标签,那能否多加一个功能呢:使用自定义快捷键切换回之前处于活动状态的选项卡,因为有的时候需要在两个网页中来回切换。如果增加了这个功能,就能少安装一个插件了。 Edge 中这种插件挺难找的,Chrome 还好,有的插件带有这个功能但是会有其他多余功能,用不上且占用内存


回复内容
CL 28天0小时前
#1

目前没有时间研究这方面的内容,特别是怎么加快捷键。如果有兴趣可以尝试修改一下这个扩展,代码都是明文没有加密的。


var tabHistory = [];

let lastActivateTime = 0;
let lastActivateId = 0;


chrome.tabs.onActivated.addListener(
  (activateInfo) => {
    let tabId = activateInfo.tabId;
    //console.log(Date.now()/1000.0, 'tab activated:', activateInfo);

    if (Date.now() - lastActivateTime < 5){
      //ignore  temp activate
      if(tabHistory.length > 0){
       
        tabHistory[0] = tabId;

        //console.log('replact last active tabid. current tab history:', tabHistory);
      }
      return;
    }

    lastActivateTime = Date.now();
   
    tabHistory = tabHistory.filter(x => x != tabId);
    tabHistory.unshift(tabId);

    //console.log('tabHistory', tabHistory);
  },
)

chrome.tabs.onRemoved.addListener(
  (tabId, removeInfo) => {
   
    //console.log(Date.now()/1000.0, 'tab removed:', tabId, removeInfo);    
    tabHistory = tabHistory.filter(x => x != tabId);
    var tempHistory = [...tabHistory];

    windowId = removeInfo.windowId;

    chrome.windows.get(windowId, {populate:true}, win =>{
      for (let tid of tempHistory) {

        for (var tab of win.tabs) {
          if (tab.id === tid) {
           
            //console.log('activating tab:', tab.id);

            chrome.tabs.update(tab.id, { active: true });
            return;
          }
        }
      }
    });
  }
)

回复主贴