Я не могу заставить работать это пользовательское расширение новой вкладки - PullRequest
1 голос
/ 25 октября 2019

Расширение не работает, потому что оно говорит следующее:

Отказано в выполнении встроенного обработчика событий, поскольку оно нарушает следующую директиву политики безопасности содержимого: "script-src 'self' blob: filesystem:». Для включения встроенного выполнения требуется ключевое слово unsafe-inline, хеш (sha256 -...) или одноразовый номер (nonce -... ').

IЯ пытался удалить все встроенные файлы js, но он выбирает тег body как встроенный скрипт.

html:

<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body onload="load()">
    <h1>
    BACKGROUND OPTIONS
    </h1>

        <input type = "text" id = "text" value = "" />
        <br>
    <button id="save"">
    SAVE
    </button>
    <br>
    <h1> 
    I MAGE:
    </h1>
    <img id="imgid">
</body>
</html>
    <script src="options.js"></script>
</body>
</html>

json:

{
  "manifest_version": 2,
  "name": "My Extension",
  "version": "3",
  "options_page": "options.html",
  "content_security_policy": "script-src 'self' 'unsafe-eval' ; object-src 'self'",
  "permissions": [
        "topSites",
        "chrome://favicon/",
        "unlimitedStorage",
        "topSites",
        "identity",
        "http://*/",
        "https://*/",
        "alarms",
        "tabs",
        "activeTab",
        "management",
        "storage",
        "webNavigation",
        "webRequest",
        "webRequestBlocking",
        "cookies",
        "contextMenus",
        "notifications",
        "background"
    ],
  "chrome_url_overrides" : {
    "newtab": "page.html"
  }
}

js:

document.getElementById("save").onclick = function(){
    var select = document.getElementById("text");
    var text = select.value;
    localStorage["text"] = text;
    var image = document.getElementById("imgid");
    image.src = text;          
}

function load() {
var load = document.getElementById("text");
load.value = localStorage["text"];
document.body.style.background = localStorage["text"];
var image = document.getElementById("imgid");
image.src = localStorage["text"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...