javascript - qué - Error: intento de ejecutar el script compilar y ejecutar en un ámbito despejado
javascript con aspx (10)
Desde que actualicé a Firefox 4.0, me he dado cuenta de que ocasionalmente recibo un error en la consola que dice:
intentar ejecutar el script compilar y ejecutar en un ámbito despejado
La única información que puedo encontrar sobre esto en la red actualmente está en el foro de grupos de mozilla , donde se sugiere que tiene algo que ver con la restauración de la sesión. En mi caso, aunque no he podido reproducir el error de manera confiable, sucede en cualquier momento, no solo después de una restauración.
¿Cual es el trato? ¿Cómo detengo el error?
El error no ocurre si Firebug (en mi caso, 1.8) está deshabilitado.
Es: menú Firebug -> Consola -> Mostrar errores de Chrome
apagar, final de la historia;)
Me di cuenta de que si desactivo el caché, ya no obtengo este error en la consola.
Me he dado cuenta de que este error puede ocurrir si escribe en el documento con document.write una vez que el documento ha terminado de cargarse (por ejemplo, en una función llamada desde el método $ (document) .ready () de JQuery). Cuando esto sucede, parece que Firefox descarta el documento anterior y escribe uno nuevo. No sé si esto es un comportamiento nuevo o no. Parece que cuando intentas operar en el documento anterior, por ejemplo, con los selectores JQuery, obtienes este error. Para mí, corregir el script en cuestión para no llamar a document.write después de que el documento cargó solucionó el error.
No tiene nada que ver con Firebug. La razón por la que "desaparece" cuando Firebug está desactivado es que ya no se ve la excepción. La causa de esto es tener un controlador asociado a un evento que ahora es nulo pero no se ha limpiado correctamente. Debe asegurarse de que el controlador se elimine correctamente, de lo contrario, el evento activa la referencia al controlador.
Obtuve este error cuando intenté agregar eventos en elementos anexados de un mismo dominio iframe. Clone () agregado y errores detenidos.
Para mí (Firefox 11, Firebug 1.9.1) sucede a veces después de actualizar la página (ya sea F5 o CTRL + F5) mientras el depurador está en pausa en un punto de interrupción.
La solución parece ser continuar la ejecución del script y actualizar la página solo cuando Firebug no está en pausa .
También tuve este problema, pero hice una nueva instalación limpia de FireFox.
después de eso, el error desapareció.
Verifique su código para ver el control de meta caché duplicado y elimine uno de ellos:
<meta http-equiv="cache-control" content="no-cache" />
En mi caso, fue el método document.write
causante del problema en Firefox 4, 5, 6 en Windows. Las versiones de Linux no se ven afectadas. Lo que tuve que hacer es sobreescribir el método document.write
.
Soy consciente de que document.write
no debería utilizarse en estos días, pero deployJava.js
, una secuencia de comandos de implementación Java Applet estándar escrita por Sun / Oracle, lo está usando. Google lo está usando en anuncios de Google AdSense. document.write
está en todas partes.
<script>
var documentWriteOutput = '''';
var got = document.write;
document.write = function(arg) { documentWriteOutput += arg; }
</script>
<script src="badScriptThatIsUsingDocumentWrite.js"></script>
<script>
runBadScriptThatIsUsingDocumentWrite();
document.write = got;
// Do whatever you want with the documentWriteOutput
// e.g. $(''#somewhere'').html(documentWriteOutput);
</script>
Espero que esto ayude. Sin embargo, vi muchas "soluciones" en Internet que no me funcionaron. Puede significar que "Intento de ejecutar el script compilar y ejecutar en un ámbito despejado" es un problema o error del motor JavaScript de Firefox.