如何搜索所有打开的选项卡?

问题描述 投票:0回答:4

我打开了许多选项卡,我想通过搜索其标题来找到一个选项卡。是否有附加组件或扩展可以执行此类操作?

google-chrome firefox browser
4个回答
2
投票

Firefox 内置了此功能。如果您刚开始在 URL 栏中输入,并且输入的第一个字符是

%
后跟一个空格,则您输入的其余内容将被视为对标题和 url 的搜索在所有 Firefox 窗口中打开选项卡。


0
投票

我不确定这是否是一个寻求帮助查找执行此类最终用户任务的扩展程序的网站,因此我将明确回答您的问题并解释如何以编程方式执行此操作。

简短的回答是,是的,可以在这里找到一个允许您执行此操作的扩展: 标签标题搜索

长的答案是,为了查找具有特定名称的所有选项卡,您需要使用 chrome tabs API

我编写了一小段 JavaScript 来演示如何创建一个带有搜索框的弹出窗口,您可以在其中输入所需的选项卡标题。 如果找到该选项卡,它将列在搜索框下方。 如果您点击列表,您将切换到该选项卡。

// Function to search for tabs
function searchtabs() {
   chrome.tabs.query({
      title: ""
   },
   // Callback to process results
   function(results) {
      // Place holder for the tab to process
      var foundTab = null;

      // Text to match against         
      var queryText = document.getElementById("textToSearchInput").value;

      // Div to place divs of matched title in
      var queryAnswerDiv = document.getElementById("foundTabsDiv");

      // Clear the current children
      while (queryAnswerDiv.hasChildNodes()) {
         queryAnswerDiv.removeChild(queryAnswerDiv.lastChild);
      }

      // Iterate over all the results
      for (var i = 0; i < results.length; i++) {
         // Keep track of the tab that is currently being processed
         foundTab = results[i];

         // If we have a title containing our string...
         if (foundTab.title.indexOf(queryText) > -1) {
            // Create a new div
            var tabDiv = document.createElement("div");
            // Set its content to the tabs title
            tabDiv.innerHTML = foundTab.title;
            // Let it know what the tabs id is
            tabDiv.tabToSwitchTo = results[i].id;
            // Allow for users to click on the representing div to switch to it
            tabDiv.onclick = function() {
               // Make the tab selected
               chrome.tabs.update(this.tabToSwitchTo, {
                  selected: true
               });
            };
            // Append the created div to our answer div
            queryAnswerDiv.appendChild(tabDiv);
         }
      }
   });
}

document.addEventListener('DOMContentLoaded', function() {
   var inputField = document.getElementById("textToSearchInput");
   inputField.focus();
   inputField.onkeydown = searchtabs;
});

此外,如果这更符合您的需求,而不是我链接的扩展程序,请告诉我,我可以打包此扩展程序。

编辑: 修复了使用错误的ID获取输入字段以及获取不到标题首字母的错误(使用

indexOf() > -1


0
投票

执行此操作的扩展程序是 Tab Hero for Chrome(Chrome 扩展程序 0.99 美元)。它搜索所有打开的选项卡(跨多个窗口)并提供切换到过滤选项卡的功能。尝试看看它是否适合您。


0
投票

火狐

Firefox 内置了此功能。如果您刚开始在 URL 栏中输入内容,并且输入的第一个字符是

%
后跟一个空格,则您输入的其余内容将被视为对以下内容的标题和 URL 的搜索:在所有 Firefox 窗口中打开选项卡。

或者,单击 Firefox 支持页面中所述的列出所有选项卡箭头,在 Firefox 中搜索打开的选项卡

单击 Chrome 窗口右上角的搜索选项卡箭头,或点击 Cmd + Shift + A (Mac)/Ctrl + Shift + A (Windows)。

© www.soinside.com 2019 - 2024. All rights reserved.