Soy bastante nuevo en Firefox y sus extensiones. ¿Hay algo así como una secuencia de comandos con JavaScript que se ejecuta cada vez que se carga una página? Mi extensión de Chrome inyecta un archivo css creando una etiqueta de enlace usando js. ¿Cómo transfiero esto a Firefox?¿El equivalente a un script de contenido en una extensión de Firefox?
5
A
Respuesta
7
Quiere la API pageMod.
var pageMod = require("page-mod");
pageMod.PageMod({
include: "*.example.org",
contentScript: 'window.alert("Page matches ruleset");'
});
0
Puede utilizar mozIJSSubScriptLoader para ejecutar el código JavaScript (cromo: //myExtension/content/script.js) cada vez que un webpage loads. Aquí está el código de muestra que necesita modificar de acuerdo con su directorio de Chrome
window.addEventListener("load", function load(event){
window.removeEventListener("load", load, false); //remove listener, no longer needed
myExtension.init();
},false);
var myExtension = {
init: function() {
var appcontent = document.getElementById("appcontent"); // browser
if(appcontent){
appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true);
}
var messagepane = document.getElementById("messagepane"); // mail
if(messagepane){
messagepane.addEventListener("load", function(event) { myExtension.onPageLoad(event); }, true);
}
},
onPageLoad: function(aEvent) {
var doc = aEvent.originalTarget; // doc is document that triggered "onload" event
// do something with the loaded page.
// doc.location is a Location object (see below for a link).
// You can use it to make your code executed on certain pages only.
var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"].getService(Components.interfaces.mozIJSSubScriptLoader);
loader.loadSubScript("chrome://myExtension/content/script.js", doc);
// add event listener for page unload
aEvent.originalTarget.defaultView.addEventListener("unload", function(event){ myExtension.onPageUnload(event); }, true);
},
onPageUnload: function(aEvent) {
// do something
}
};
0
Solía usar Greasemonkey en Firefox. De hecho, las Extensiones de Chrome comenzaron como una imitación de Greasemonkey, y fueron el origen de las secuencias de comandos de contenido.
Cuestiones relacionadas
- 1. Panel y contenido de PageMod Mensaje de script que pasa en una extensión de Firefox
- 2. ¿Cómo hacer referencia a un archivo en el directorio de datos de una extensión de Firefox?
- 3. ¿Cómo limitar el script de contenido de extensión de Chrome a un tipo de contenido específico?
- 4. Cómo llamar a una función de script de contenido desde main.js en el complemento de Firefox
- 5. Carga de script de contenido en la extensión de cromo
- 6. Reproducir sonidos en una extensión de Firefox
- 7. Cómo usar @ font-face en una extensión de Chrome en un script de contenido
- 8. localStorage en una extensión de Firefox
- 9. Extensión de Chrome: ¿cómo detectar que el script de contenido ya está cargado en una pestaña?
- 10. Compartir datos entre archivos en una extensión de Firefox
- 11. Extensión de Chrome: comunicación entre script de contenido y background.html
- 12. ¿Hay un equivalente de XDomainRequest en Firefox?
- 13. Migración de la extensión de Chrome a Firefox
- 14. Inserción CSS con una extensión de Firefox
- 15. Lea el archivo empaquetado con la extensión de Chrome en el script de contenido
- 16. ¿Cómo puedo portar una extensión de Google Chrome a Firefox?
- 17. cómo no heredar estilos en un script de contenido de extensión de Chrome
- 18. console.memory equivalente en Firefox?
- 19. Firefox Addons SDK: ¿cómo acceder al almacenamiento simple desde el script de contenido?
- 20. ¿Cómo implementar mensajes que pasan en la extensión de Firefox?
- 21. Cómo inyectar CSS utilizando el archivo de script de contenido en la extensión de Chrome?
- 22. ¿Cómo puedo convertir una cadena de HTML en un objeto DOM en una extensión de Firefox?
- 23. Encontrar el usuario actualmente conectado desde una extensión de Firefox
- 24. Firefox: complemento vs extensión?
- 25. Inyectar un archivo CSS en una página web a través de la extensión de Firefox
- 26. ¿Cómo puedo abrir la página emergente de mi extensión de Chrome desde el script de contenido de la extensión?
- 27. XMLHttpRequest en la extensión de Firefox
- 28. ¿Cuál es la diferencia entre una extensión de Firefox y un complemento de Firefox?
- 29. ¿Cómo puede una extensión de Firefox inyectar un archivo css local en una página web?
- 30. extensión de firefox. Cómo atrapar el evento onload?
¿En qué página pongo esto? Un archivo js incluido en el browser.xul tal vez? –
@JacquesBlom: lo pones en 'lib/main.js' para una extensión creada con el [Add-on SDK] (https://addons.mozilla.org/en-US/developers/builder). –
cuando hago esto: incluir: "facebook.com" - no funcionará –