Estou tentando facer unha extensión de cromo extremadamente sinxela que alerta algo cando fai clic nun botón, pero non funciona. Recibo o seguinte erro:
negouse a executar un script en liña porque ten a seguinte política de política de seguridade de contido: “SCRICT-SRC” Self “Chrome-extensión-recurso:”. A palabra clave “inseguridade en liña” é necesaria, un hash (“sha256 -…”) ou un nonce (“noce -…”) para habilitar a execución en liña.
alguén que pode axudar? Isto é o que teño agora:
popup.html
<html><body><input type = "button" id = "the_button" value = "My button" onclick = "sayHi()"></input></body><script> src = "popup.js" </script></html>
popup.js
function sayHi() {alert("hi")}
manifest.json
{"manifest_version": 2,"name": "Test","description": "Test Extension","version": "1.0","icons": {"48": "icon.png"},"permissions": ,"content_scripts": ,"js": }],"browser_action": {"default_title": "This is a test","default_icon": "icon.png","default_popup": "popup.html"}}
respostas
3 para a resposta № 1
O problema está aquí
<script> src = "popup.js" </script>
para incluír o uso do ficheiro JS
<script src="popup.js"></script>
Este erro ocorrerá cando Tente poñer JavaScript en liña nos teus ficheiros. As extensións de cromo queixan diso.
Obterías a mesma mensaxe de erro se probas
<script> alert("hello world"); </script>
documentación de extensión de Google Chrome
non executará JavaScript en liña. Esta restrición prohibe tanto os bloques en liña como os controladores de eventos en liña (por exemplo, < BOTON ONCLICK = “…” >).
Isto tamén significa que o seu controlador de eventos en liña non funcionará, debe vincular o evento dinámicamente no seu script popup.js:
document.getElementById("the_button").addEventListener("click", function(){// click code here}, false);
4 para a resposta № 2
<script> src = "popup.js" </script>
Debe ser
<script src="popup.js"></script>
Creo que …