5

que estoy experimentando un comportamiento bastante peculiar - mis módulos RequireJS parecen estar no inicializar y funcionando a todo ello bajo IE9:RequireJS que no trabajan en IE9

<head> 
    ... 
    <script data-main="/static/js/main" src="/static/js/libs/require.js"></script> // Seems to be not running at all. 
</head> 

Sin embargo, cada vez que el fuego de herramienta de desarrollo de IE9, y vuelva a cargar la página, los módulos se ejecutarán correctamente tal como deberían en Firefox/Chrome/Safari/etc. Limpiar la memoria caché del navegador y cerrar la herramienta de desarrollador en IE9 hará que JavaScript no vuelva a funcionar por completo.

Otra forma de poner en marcha la ejecución de los módulos RequireJS es añadir un guión sincrónica llamando antes de que:

<head> 
    ... 
    <script type="text/javascript" src="https://getfirebug.com/firebug-lite.js"></script> // Add any synchronous script calling here and the module below will execute fine. 
    <script data-main="/static/js/main" src="/static/js/libs/require.js"></script> 
</head> 

Parecería que la razón del extraño comportamiento puede ser:

  • Algo salió mal con la carga asíncrona RequireJS'
  • Algo salió mal que causó que las secuencias de comandos para poner en marcha antes de $ ready()

Sin embargo, la razón por la cual la herramienta de desarrollador puede impulsar la ejecución realmente me desconcertaba.

Buscando una explicación completa del fenómeno y cómo resolverlo.

Respuesta

3

Encontré la respuesta: console es undefined en IE9 cuando la herramienta de desarrollo no está abierta, pero nunca se llega a ver este error ya que la consola de la herramienta requiere una recarga de página para empezar a funcionar.

Más detalles aquí: https://github.com/jrburke/requirejs/issues/488

Cuestiones relacionadas