javascript - Chrome扩展程序:加载

时间:2017-08-12 20:22:46

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

编辑:使用https://developer.chrome.com/extensions/devtools#evaluated-scripts-to-devtools作为参考修改代码。仍然没有运气。

我尝试编写使用chrome。* API调用的chrome扩展,并将结果的部分保存在文件中。我想自动化从加载页面到文本文件下载的所有内容,因此,我不想使用browser.onclick()事件。 我目前的尝试没有效果。

我需要做出哪些改变?

https://stackoverflow.com/a/16720024

使用上述答案作为参考,我尝试了以下内容:

的manifest.json

{
   "name":"Test Extension",
   "version":"0.0.1",
   "manifest_version": 2,
   "description":"Description",
   "permissions":["tabs"],
   "background": {
    "scripts": ["background.js"]
    },
   "devtools_page": "devtools.html"
}

background.js

//背景页面 - background.js

chrome.runtime.onConnect.addListener(function(devToolsConnection) {
    // assign the listener function to a variable so we can remove it later
    var devToolsListener = function(message, sender, sendResponse) {
        // Inject a content script into the identified tab
        chrome.tabs.executeScript(message.tabId,
            { file: message.scriptToInject });
    }
    // add the listener
    devToolsConnection.onMessage.addListener(devToolsListener);

    devToolsConnection.onDisconnect.addListener(function() {
         devToolsConnection.onMessage.removeListener(devToolsListener);
    });
}

devtools.js

var backgroundPageConnection = chrome.runtime.connect({
    name: "devtools-page"
});

backgroundPageConnection.onMessage.addListener(function (message) {
    // Handle responses from the background page, if any
});

chrome.devtools.network.onRequestFinished.addListener(
    function(request) {
        chrome.runtime.sendMessage({
            string: "Hi",
            tabId: chrome.devtools.inspectedWindow.tabId,
            scriptToInject: "content.js"
        });

     }
);
chrome.runtime.sendMessage({
    string: "Hi",
    tabId: chrome.devtools.inspectedWindow.tabId,
    scriptToInject: "content.js"
});

content.js

alert("Hello");

0 个答案:

没有答案