1

我使用MDN中的以下代码尝试了多功能框。当我尝试时,我暂时manifest.jsonabout:debugging. 这在普通浏览器中工作,并输入cs a显示一些建议。

但是,此建议功能在私人模式下不起作用。即使我允许它在私人窗口中运行,这也没有改变。

如何让多功能框建议功能在私密模式下工作?

browser.omnibox.setDefaultSuggestion({
  description: "Type the name of a CSS property"
});

/*
Very short list of a few CSS properties.
*/
const props = [
  "animation",
  "background",
  "border",
  "box-shadow",
  "color",
  "display",
  "flex",
  "flex",
  "float",
  "font",
  "grid",
  "margin",
  "opacity",
  "overflow",
  "padding",
  "position",
  "transform",
  "transition"
];

const baseURL = "https://developer.mozilla.org/en-US/docs/Web/CSS/";

/*
Return an array of SuggestResult objects,
one for each CSS property that matches the user's input.
*/
function getMatchingProperties(input) {
  var result = [];
  for (prop of props) {
    if (prop.indexOf(input) === 0) {
      console.log(prop);
      let suggestion = {
        content: baseURL + prop,
        description: prop
      }
      result.push(suggestion);
    } else {
      if (result.length != 0) {
        return result;
      }
    }
  }
  return result;
}

browser.omnibox.onInputChanged.addListener((input, suggest) => {
  suggest(getMatchingProperties(input));
});

browser.omnibox.onInputEntered.addListener((url, disposition) => {
  switch (disposition) {
    case "currentTab":
      browser.tabs.update({url});
      break;
    case "newForegroundTab":
      browser.tabs.create({url});
      break;
    case "newBackgroundTab":
      browser.tabs.create({url, active: false});
      break;
  }
});

我的manifest.json如下:

{
  "manifest_version": 2,
  "name": "text",
  "version": "1.0",
  "description": "text",
  "background": {
    "scripts": [
      "background.js"
    ]
  },
  "omnibox": {
    "keyword": "cs"
  },
  "permissions": [
    "bookmarks",
    "tabs"
  ]
}

  • 视窗 10
  • 火狐 84.0.1(64 位)
4

0 回答 0