2010-04-08 8 views
12

Quiero hacer un script tipo greasemonkey para firefox que se ejecute antes de los scripts en la página. Los scripts de Greasemonkey se ejecutan después de los scripts en la página, por lo que no funcionarán. La razón por la que necesito esto es porque quiero editar uno de los scripts en la página. Específicamente, quiero eliminar una secuencia de comandos que fuerza a la página a cargar dentro de un marco ya que la página dentro de un cuadro rompe F5 (presionando F5 hace que la página salte a la página principal en lugar de volver a cargar la página actual). Además, no quiero cargar la página a través de un proxy con AJAX y cambiar a Chrome/Opera tampoco es una opción. Estaba pensando que quizás el complemento Jetpack funcionaría, pero parece que solo tiene el mismo evento que usa greasemonkey, DOMContentLoaded. ¿Algunas ideas?¿Cómo puedo ejecutar un script de usuario antes de que se ejecuten scripts en línea en una página web?

+0

** IF ** Opera era una opción, que simplemente podría haber cambiado el nombre de su archivo '* .user.js' a' * .js' y se ejecutaría antes de que el contenido comenzara a cargarse. – c69

+0

Lo sé, pero no uso la ópera como mi navegador. Como tengo Firefox altamente personalizado, cambiar y seguir teniendo todo lo que quiero probablemente sea imposible. Instalar y usar otro navegador para solo 1 sitio parece un poco tonto. – Telanor

Respuesta

6

[Editar 2013] Utilice el módulo page-mod del Add-on SDK con contentScriptWhen = start.


mayores: derecho, sólo el más reciente de Firefox construye (actualmente 3.7 nighlies, más adelante se pueden añadir a 3.6.x) tienen soporte para ejecutar secuencias de comandos personalizados antes de guiones de contenido especificado. I wrote a prototype Jetpack-SDK module para aprovechar la nueva notificación.

¿Es una secuencia de comandos < src> o una secuencia de comandos en línea? En el primer caso, se puede bloquear con una política de contenido (algo parecido a un bloque de anuncios).

+0

Interesante. Veré si puedo encontrar la manera de hacerlo funcionar. La secuencia de comandos es una secuencia de comandos en línea. – Telanor

+0

¿Podría agregar una referencia a un ejemplo para hacer lo que le pide @Telanor? –

+0

@jaime: editó la respuesta para que apunte al módulo mod de página. – Nickolay

Cuestiones relacionadas