2009-05-22 12 views

Respuesta

50

Si el atributo async se encuentra en un script externo (uno con src =), los navegadores que lo soportan descargará esa secuencia de comandos en segundo plano sin bloquear el resto del contenido en la página. El script se ejecutará cada vez que termine la descarga.

http://dev.w3.org/html5/spec/Overview.html#attr-script-async

Como ya he mencionado en un comentario, el establecimiento asíncrono = true, async = falsa o asíncrono = nada todos significan lo mismo. Permiten el comportamiento asíncrono. La única forma de hacer que un script no sea asincrónico es omitir completamente el atributo.

http://dev.w3.org/html5/spec/Overview.html#boolean-attributes

+4

Así que no necesito colocar javascript en la parte inferior de la página si recuerdo que se trata de 'async', ¿verdad? – satoru

8

En XHTML se necesita en consecuencia, tenga en cuenta atributos como atributos y sus valores, mientras que HTML no lo hace. Me gusta la conformidad de ese principio, así que siempre lo uso en forma de:

async="async" 

De esta manera puedo servir a mis documentos como application/xhtml + xml.

Si esto no es de ningún interés para usted, porque usted es de la opinión de que el documento que sirve como text/html es lo suficientemente bueno, entonces siempre se puede utilizar:

async 
+0

Tu respuesta es informativa (sobre tipos de doc/mime) pero no resolvió mi pregunta real: ¿qué hace el atributo 'async'? –

+0

Lamento que no estuviera en el tema. – JPA

+0

Async es un nuevo atributo HTML5 para el elemento script. Hace que el navegador continúe analizando el resto de la página cuando encuentra una etiqueta de secuencia de comandos en lugar de analizar la secuencia de comandos primero y luego continuar el análisis de la página. Encontré un interesante tutorial sobre esto: http://www.youtube.com/watch?v=KHSeGURldw8 – JPA

1

Sólo asíncrono suficiente.

Puede probar ambos y luego medir la diferencia en la velocidad de la página. Como crictime usa una sola sustancia para eso.

+0

No, no es en todos los casos. – JPA

+0

En el caso de XHTML, servido como application/xml + xhtml, es un error fatal y causa que la página se congele cuando observa un atributo como ese. – JPA

2

Simplemente significa

  1. Descargar el script externo asyncronously (o en paralelo) sin bloquear el análisis de HTML.
  2. El script una vez descargado será Ejecutado inmediatamente bloqueando el análisis html.


Here's una buena ilustración.

Nota: Este atributo funciona solo para las secuencias de comandos externas (la del atributo src) y no para las secuencias de comandos en línea.