J'écris une extension Firefox qui doit injecter un fichier CSS dans les pages Web. Le fichier css est livré avec l'extension, donc je peux y accéder en utilisant une URL chromeComment une extension Firefox peut-elle injecter un fichier css local dans une page Web?
chrome://extensionid/content/skin/style.css
Je suis en train d'injecter css comme celui-ci lorsque la page est chargée:
var fileref = document.createElement("link");
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", "chrome://extensionid/content/skin/style.css");
document.getElementsByTagName("head")[0].appendChild(fileref);
Cependant, la css n'est pas chargé et Firebug affiche le message 'Filtered chrome url' au lieu du contenu du fichier, lorsque j'inspecte l'élément link
que j'ai créé. Si j'essaie de charger ce fichier css à partir d'un serveur externe, tout va bien.
Est-il possible de charger un fichier css fourni avec l'extension?
Merci, je ne savais pas de ressource :. On dirait que c'est ce dont j'ai besoin. –
J'ai posté un peu de fond sur pourquoi c'est la bonne réponse à http://stackoverflow.com/questions/2685243/inserting-css-with-a-firefox-extension/5395489#5395489 – studgeek
Quelqu'un peut-il confirmer si Firefox supporte toujours cet accès mécanisme? J'ai passé des heures sur ce sujet et dans tous les cas, la dernière version de Firefox refuse d'autoriser le contenu de la page à accéder aux éléments exposés avec un alias de ressource dans le manifeste. De même, la navigation directe vers resource: // alias/uri/to/file échoue sans erreur observable. Si cela fonctionne encore, peut-être un exemple un peu plus détaillé pourrait résoudre la confusion? –