leí "Dive into Greasemonkey" (por Mark Pilgrim) escrita en 2005. Se menciona que envuelve un script de Greasemonkey usuario en una envoltura función anónima. ¿Greasemonkey inserta el contenedor en el código JavaScript de origen o lo agrega como cualquier controlador de eventos como window.onload
?JavaScript - Greasemonkey cómo funciona
7
A
Respuesta
6
Cuestiones relacionadas
- 1. Almacenamiento en archivo usando JavaScript/GreaseMonkey
- 2. ¿Cómo puedo redireccionar una página con javascript en Greasemonkey?
- 3. Greasemonkey contra un iframe usando @include - ¿funciona esto?
- 4. Greasemonkey @require jQuery no funciona "Componente no disponible"
- 5. Funciones ocultas de Greasemonkey
- 6. Cómo incrustar complementos jQuery adicionales en Greasemonkey
- 7. ¿Agregar un botón de JavaScript usando Greasemonkey o Tampermonkey?
- 8. Greasemonkey y variables globales
- 9. ¿Cómo puedo usar jQuery en Greasemonkey?
- 10. Greasemonkey, Chrome y unsafeWindow.foo()
- 11. LocalStorage en Greasemonkey
- 12. Greasemonkey onclick vinculante
- 13. GreaseMonkey Hello World
- 14. Greasemonkey \ JavaScript Copiar en el botón del Portapapeles
- 15. Alternativa simple a Greasemonkey
- 16. Función Javascript autodestructiva - ¿Cómo funciona?
- 17. ¿Cómo funciona 'call' en javascript?
- 18. ¿Cómo incluyo un archivo javascript remoto en un script de Greasemonkey?
- 19. Almacenamiento de Greasemonkey
- 20. Greasemonkey Version Script constante
- 21. Guardar archivo usando Greasemonkey
- 22. Cómo reemplazar el evento onclick con GreaseMonkey?
- 23. Cómo excluir iframe en Greasemonkey o Tampermonkey?
- 24. Depuración de scripts similares a greasemonkey
- 25. ¿Cómo funciona Javascript en línea (en HTML)?
- 26. ¿Cómo funciona la precarga de javascript?
- 27. Herencia de JavaScript o ¿Cómo funciona?
- 28. ¿Cómo funciona la asignación lógica de JavaScript?
- 29. ¿Cómo funciona la construcción ~ [] en JavaScript?
- 30. ¿Cómo funciona el compilador dart javascript (dart2js)?
gracias por señalar el código. cuando se desencadena el evento DOMContentLoaded, ¿se invoca el contenedor del usuario como el controlador del evento o se inserta el contenedor como parte del código fuente? en otras palabras, la línea 309, this.evalInSandbox ("(función() {" + scriptSrc + "})()", url, sandbox, script), ejecuta el contenedor o inserta el contenedor en el código original de JavaScript? – Paul
Primero GM escucha los eventos DOMContentLoaded, cuando eso sucede, GM determina qué usuarios se deben ejecutar (a través de las reglas @include/@exclusiva, y verifica que la URL sea 'greasemonkeyable'), luego el código fuente de un usuario (que es solo string en este punto) que se debe ejecutar se envuelve en una función autoejecutable anónima (a través de la concatenación de cadenas), y finalmente hace una evalInSandbox en la función autoejecutable anónima (que ejecuta el userscript). – erikvold
Entonces, el script se ejecuta en el momento en que se inyecta. ¿Es correcto? – Paul