“checkedpectedWindow”的替代品(不适用于chrome devtools)

时间:2015-10-20 13:20:21

标签: javascript google-chrome google-chrome-extension

我的代码在Chrome DevTools中工作正常,但现在我想将我的扩展程序面板从chrome调试器移动到我的扩展程序弹出窗口。

特别是我对此代码有疑问:

function callCommand(cmd) {
    chrome.devtools.inspectedWindow.eval(
        cmd,
        {useContentScriptContext: true},
        function (isException, result) {
            if (isException || chrome.runtime.lastError) {
                console.error('Error', cmd, result, chrome.runtime.lastError);
            }
        }
    );

显然,chrome调试工具会显示Cannot read property 'inspectedWindow' of undefined,因为checkedpectedWindow仅适用于chrome devtools。

如何以不同方式实施?

1 个答案:

答案 0 :(得分:1)

chrome.devtools API在manifest.json中定义的专用devtools页面之外不可用,错误消息暗示了这一点。您只能以不同方式重新实现所需的功能,或将其从扩展中删除。

例如,如果要在页面上下文中执行某些代码,请使用以下代码注入<script>元素:Building a Chrome Extension - Inject code in a page using a Content script