Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/07/2012, 02:06
eduardobpe
 
Fecha de Ingreso: mayo-2012
Ubicación: La Rioja (España)
Mensajes: 13
Antigüedad: 12 años
Puntos: 0
Atributo async en etiqueta script en Firefox

Hola a tod@s.
Estoy probando cómo funciona todo lo relacionado con scripts no bloqueantes. En HTML5 existe un nuevo atributo para la etiqueta <script> llamado async.
Este atributo hace que el archivo Javascript enlazado mediante esta etiqueta no bloquee la carga de los elementos de la página ni la ejecución de otros scripts de Javascript.

El caso es que estoy probando en Firefox el siguiente código y no funciona correctamente:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <head>
  3.         <title>Exercise 1</title>
  4.         <script type="text/javascript" async src="example1.js"></script>
  5.         <script type="text/javascript" async src="example4.js"></script>
  6.         <script type="text/javascript" src="example3.js"></script>
  7.     </head>
  8.     <body>
  9.         <p>Hello world</p>
  10.     </body>
  11. </html>

El código de los archivos Javascript enlazados en el código HTML anterior es el siguiente:

//example1.js:

Código Javascript:
Ver original
  1. alert("I'm the example 1");

//example3.js

Código Javascript:
Ver original
  1. alert("I'm the example 3");
//example4.js

Código Javascript:
Ver original
  1. alert("I'm the example 4");
Cuando abro un archivo .html en Firefox con el código de más arriba ocurre lo siguiente en este orden:

1. Se muestra un pop-up con el texto "I'm the example 3".
2. Se muestra un pop-up con el texto "I'm the example 4".
3. Se muestra un pop-up con el texto "I'm the example 1".

Y después de todo esto, se debería mostrar el contenido de la página, que sólo tiene el párrafo con el texto "Hello World", pero no se muestra.
El área del navegador donde se visualizan las páginas aparece en blanco, y el anillo naranja que aparece en una pestaña de Firefox cuando una página se está cargando no para de girar y no desaparece.

¿Alguna idea de por qué ocurre esto?.