2009-12-01 14 views
10

He estado trabajando en una extensión de Firefox, pero ha sido lenta (en parte porque no tengo tiempo para trabajar en ella). Tengo un esqueleto básico, he verificado que puedo hablar con una API JSON externa, modificar cualquier página web cuando se carga y mostrar un cuadro de preferencias. Estos son todos los Hello Worlds necesarios para la extensión que estoy escribiendo (tal vez no necesito el cuadro de preferencias).secuencia de comandos Firefox Exension vs. Greasemonkey?

De repente, se me ocurrió que podría estar ignorando una forma mucho más fácil de hacerlo. Since Greasmonkey scripts may be compiled into Firefox Extensions, Greasemonkey podría ser un mejor camino a seguir:

  1. Podría ser más fácil (no estoy seguro)?
  2. Podría ser un navegador cruzado (al menos Safari y Firefox)?
  3. ¿Hay límites para las secuencias de comandos de Greasemonkey frente a las extensiones de FF 'nativas'? ¿Se pueden escribir las IU de Chrome? DIVs normales aparecerán? Las preferencias se almacenan (creo que pueden ser)?

Estoy buscando una comparación de Greasemonkey frente a las extensiones "nativas" de Firefox. Además, ¿alguien ha trabajado con "compilar" un script de Greasemonkey en una extensión de FF (experiencias, problemas)?

Respuesta

5

Diría que, en general, si su propósito es modificar la forma en que se muestran/funciones las páginas web, entonces Greasemonkey es el camino a seguir. Si tiene un montón de ventanas/UI para mostrar y realmente está yendo más allá de la intención central de Greasemonkey, entonces probablemente sea mejor seguir con una extensión más tradicional.

+0

Gracias Philfreo, que parece ser mi comprensión también. Al mismo tiempo, quiero entrar en el aspecto más técnico de esto, especialmente la compilación de las extensiones de Greasemonkey (de lo contrario, los usuarios necesitan Greasemonkey, ¿no?). –

+0

Corrija ... pero si desea admitir Safari, todavía tendrá que proporcionar instrucciones sobre cómo instalar GreaseKit primero ... y las personas que usan Greasemonkey probablemente no instalen una extensión para Firefox – philfreo

1

Uno piensa que los scripts de greasemonkey no pueden invocar UniversalXPConnect. Me encuentro con algunos problemas debido a esto, no estoy seguro de si esto se puede resolver con una extensión de Firefox. Pero me siento bastante limitado porque no puedo llamar a UniversalXPConnect y hacer algo grande.

+0

Gracias Priyank, veo que de su otra pregunta aquí http://stackoverflow.com/questions/1284187/universalxpconnect-in-greasemonkey-script –

1

Ahora Google Chrome está ganando popularidad. Y también tiene su propia API de extensión. La mayoría de los scripts simples de Greasemonkey se instalarían en Google Chrome sin modificaciones. Si está utilizando XHR, puede que tenga que crear una extensión de Chrome.

Creo que ahora Mozilla se ha dado cuenta de que la extensión de Firefox necesita una revisión. Por el momento están presionando para Jetpack. Deberían haber mejorado el mecanismo de extensión hace mucho tiempo siguiendo el ejemplo de éxito de Greasemonkey.

Solo agrego a su pregunta que hay más opciones que solo Greasemonkey y Firefox Extension. Desea una solución que sea fácil de instalar/ejecutar en múltiples navegadores.

Me gustaría pensar qué 'características' voy a implementar en la extensión del navegador y luego ver qué mecanismo de extensión (GM, Jetpack, extensión FF, Extensión de Google Chrome) admite todas las características.

+0

Punto tomado , gracias. –

1

Desde que pregunté esto, comencé a trabajar con la compilación de scripts de Greasemonkey en Firefox. Funciona de maravilla.

Las limitaciones son todas las cosas que no se pueden hacer con una extensión de Greasemonkey. No puedes hacer un cuadro de preferencias de complementos de Firefox real, ni cosas serias de "Chrome". Lo único que puede modificar en el navegador es chrome.css que aparece algún tiempo antes de la carga de la página.

Probablemente haya otros límites (ver la respuesta de Priyank, que tiene que ver con el acceso al sistema de archivos local).

Como dice philfreo, si su intención es modificar una página web, Greasemonkey es una buena forma de hacerlo. No he visto NINGÚN problema al compilar las extensiones de Greasemonkey (sorprendentemente) y hacer que funcionen como lo hacen en Greasemonkey.

Cuestiones relacionadas