小编Par*_*ala的帖子

Chrome 扩展程序的 chrome.tabs.onCreated 和 executescript 不起作用

我正在尝试在新选项卡侦听器的另一个外部页面中执行一些脚本。

背景.js

function onCreatedChrome(){
    chrome.tabs.onCreated.addListener(function(tab) {
        if (tab.url.indexOf("chrome-devtools://") == -1) {
            localStorage.setItem("tabid", tab.id);
            chrome.tabs.executeScript(tab.id, {code: "alert('Hello World')"}, function() {
                if (chrome.runtime.lastError) {
                    localStorage.setItem("Error", chrome.runtime.lastError.message);
                    console.error(chrome.runtime.lastError.message);
                }
                else{
                    localStorage.setItem("Else case", "This should work")
                }
            });
        }
    });
}


function createTab(){
    return function(){
        var url = "https://www.yahoo.com/";
        chrome.tabs.create({ url: url });
    }
}

$(document).ready(function(){
    onCreatedChrome();
    $("#button").click(createTab());
});
Run Code Online (Sandbox Code Playgroud)

清单文件

{
  "manifest_version": 2,

  "name": "Execute Script",
  "description": "ExecuteScript extension",
  "version": "1.0",

  "permissions": [
    "activeTab",
    "tabs",
    "http://*/*",
    "https://www.yahoo.com/*"
  ],
  "content_scripts": [
    {
      "matches": ["https://*/*"],
      "js": …
Run Code Online (Sandbox Code Playgroud)

javascript jquery google-chrome google-chrome-extension

5
推荐指数
1
解决办法
6510
查看次数