【问题标题】:How to modify content under a devtools panel in a Chrome extension?如何在 Chrome 扩展程序的 devtools 面板下修改内容?
【发布时间】:2012-07-24 04:45:26
【问题描述】:

我正在开发 Google 扩展程序,我正在向开发人员工具添加新面板,它似乎对我来说工作正常。但是不知道怎么通过JavaScript修改面板的内容。

有人能告诉我吗?

【问题讨论】:

  • 不适合我。可能是我没有关注它。其实我想从网络请求中读取标头并在面板中显示内容。

标签: google-chrome-extension google-chrome-devtools


【解决方案1】:

在面板中显示内容并不难。首先,我假设您在the documentation 之后创建了基本扩展(由manifest.jsondevtools.htmldevtools.js 组成)。 devtools.html 至少包含 <script src="/devtools.js"></script>

chrome.devtools.panel.create用于创建面板时,可以指定回调。此回调接收ExtensionPanel 类型的参数。此对象定义 onShownonHidden 事件侦听器。
onShown 事件侦听器接收一个附加参数:对面板的 window 对象的引用。现在,您可以为所欲为。

例如,当用户第一次打开 devtools 面板时,将一些文本附加到面板:

chrome.devtools.panels.create("devtools Test", "/icon.png", "/panel.html",
  function(extensionPanel) {
    var runOnce = false;
    extensionPanel.onShown.addListener(function(panelWindow) {
        if (runOnce) return;
        runOnce = true;
        // Do something, eg appending the text "Hello!" to the devtools panel
        panelWindow.document.body.appendChild(document.createTextNode('Hello!'));
    });
});

【讨论】:

  • 完美...非常感谢 Rob。监听器 onShown 对我不起作用,因为我在创建函数调用之外尝试。
猜你喜欢
  • 2023-04-06
  • 1970-01-01
  • 2016-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-08
  • 2022-10-14
  • 1970-01-01
相关资源
最近更新 更多