Google chrome extension 如何替换所选文本?(js,chrome扩展)

Google chrome extension 如何替换所选文本?(js,chrome扩展),google-chrome-extension,Google Chrome Extension,重要:我对这一点很陌生,这是我有史以来的第一次扩展。“hello world”类型。我知道编码,但不是我的强项 请对我耐心点。我浏览了很多代码,仍然找不到适合我的东西。我被推荐到几个地方和链接。但是这些解释(尽管相关)对我来说并不适用 我的目标是在任何有文本框、区域、字段等(输入)的网站上使用此功能。例如,顶部的搜索框,或我键入此内容的位置 让我们从这个开始。 我能够创建一个包含两个选项的上下文菜单项: bg_context.js chrome.contextMenus.create({

重要:我对这一点很陌生,这是我有史以来的第一次扩展。“hello world”类型。我知道编码,但不是我的强项

请对我耐心点。我浏览了很多代码,仍然找不到适合我的东西。我被推荐到几个地方和链接。但是这些解释(尽管相关)对我来说并不适用

我的目标是在任何有文本框、区域、字段等(输入)的网站上使用此功能。例如,顶部的搜索框,或我键入此内容的位置

让我们从这个开始。 我能够创建一个包含两个选项的上下文菜单项:

bg_context.js

chrome.contextMenus.create({
    title: "Change",
    id: "sampleParent",
    contexts:["selection"],
});

chrome.contextMenus.create({
    title: "1337 Text",
    parentId: "sampleParent",
    id: "option1",
    contexts:["selection"],
    onclick: option1
});
chrome.contextMenus.create({
    title: "aLt TeXt",
    parentId: "sampleParent",
    id: "option2",
    contexts:["selection"],
    onclick: option2
});
function copyToClipboard(text) {
  const input = document.createElement('input');
  input.style.position = 'fixed';
  input.style.opacity = 0;
  input.value = text;
  document.body.appendChild(input);
  input.select();
  document.execCommand('Copy');
  document.body.removeChild(input);
  document.execCommand('Paste'); // DOES NOT PASTE
};
因此,当我右键单击所选文本时,我只想用所选选项可用的文本替换所选内容

我宁愿避免复制粘贴方法。我可以复制,但不能粘贴。我必须手动粘贴(Ctrl+V)。但我不知道是否还有其他选择

感谢您的耐心和帮助

-G先生

==更新====

manifest.json

我能做到这一点

bg_content.js

chrome.contextMenus.create({
    title: "Change",
    id: "sampleParent",
    contexts:["selection"],
});

chrome.contextMenus.create({
    title: "1337 Text",
    parentId: "sampleParent",
    id: "option1",
    contexts:["selection"],
    onclick: option1
});
chrome.contextMenus.create({
    title: "aLt TeXt",
    parentId: "sampleParent",
    id: "option2",
    contexts:["selection"],
    onclick: option2
});
function copyToClipboard(text) {
  const input = document.createElement('input');
  input.style.position = 'fixed';
  input.style.opacity = 0;
  input.value = text;
  document.body.appendChild(input);
  input.select();
  document.execCommand('Copy');
  document.body.removeChild(input);
  document.execCommand('Paste'); // DOES NOT PASTE
};
我可以使用Ctrl+V进行粘贴。但是,我不希望增加额外的步骤

再次感谢您的耐心和帮助

-G先生