Estoy tratando de inyectar mi CSS desde JavaScript que se inyecta como un script contenido:Cómo inyectar CSS utilizando el archivo de script de contenido en la extensión de Chrome?
"content_scripts": [
{
"matches": ["http://www.google.com/*"],
"js": ["script.js"]
}
],
He encontrado similar question sobre la inyección de CSS, pero me encontré con un problema al utilizar el código de accepted answer. Aquí está mi script.js
contenidos:
var link = document.createElement("link");
link.href = chrome.extension.getURL("style.css");
link.type = "text/css";
link.rel = "stylesheet";
document.getElementsByTagName("head")[0].appendChild(link);
Después de cargar alguna página aparece este mensaje en la consola:
Negar la carga de cromo-extensión: //phkgaaiaakklogbhkdnpjncedlbamani/fix.css. Los recursos se deben enumerar en la clave de manifiesto de web_accessible_resources en orden para ser cargados por páginas fuera de la extensión.
¿Hay alguna manera de arreglar esto? O, tal vez, ¿alguna otra forma de inyectar un CSS de ese archivo JavaScript?
Nota: No puedo incluir la hoja de estilos directamente desde el manifiesto.
Pero tengo que hacer algunas cosas relacionadas con esta hoja de estilo en JavaScript, por lo que no es una solución en mi caso. – Roman
En realidad, el código que se muestra en la pregunta no generaría ese error, al menos en la última versión * de Chrome * (20). Algo falta, algo está faltando. ¿Es "fix.css" un archivo real? ¿Dónde está ubicado? Enlace al código de extensión completo. ¿Qué versión de Chrome estás usando? ... Agregar al agregar a los permisos del manifiesto debería funcionar sin consideración (el primer enlace). ¿Lo intentaste? –
Aquí está el código fuente - [https://github.com/Tsukanov/CleanTube/tree/activation-feature](https://github.com/Tsukanov/CleanTube/tree/activation-feature). Lo probé en las versiones 20 y 22, obtuve el mismo resultado. Y no estoy seguro de qué agregar en manifiesto. – Roman