scripts script outside inside body async javascript html

outside - Que es mejor:<script type="text/javascript">...</ script> o<script>...</ script>



scripts js (6)

Cuál es mejor o más conveniente de usar:

<script type="text/javascript">...</script>

o

<script>...</script>


¿Necesitas un atributo de tipo? Si está utilizando HTML5, no. De lo contrario, sí. HTML 4.01 y XHTML 1.0 especifican el atributo de type según sea necesario, mientras que HTML5 lo tiene como opcional, por defecto a text/javascript . HTML5 ahora está ampliamente implementado, por lo que si usa el tipo de documento HTML5, <script>...</script> es válido y una buena opción.

En cuanto a qué debe ir en el atributo de tipo, la application/javascript tipo MIME application/javascript registrada en 2006 está destinada a reemplazar text/javascript y es compatible con las versiones actuales de todos los principales navegadores (incluido Internet Explorer 9). Una cita del RFC relevante :

Este documento define texto / javascript y text / ecmascript, pero los marca como "obsoletos". Se desaconseja el uso de tipos de medios experimentales y no registrados, como se detalla en la parte anterior. Los tipos de medios,

* application/javascript * application/ecmascript

que también se definen en este documento, están destinados para uso común y deberían utilizarse en su lugar.

Sin embargo, IE hasta e incluyendo la versión 8 no ejecuta script dentro de un elemento <script> con un atributo de tipo application/javascript o application/ecmascript , por lo que si necesita admitir IE antiguo, está atascado con text/javascript


Ambos funcionarán pero el estándar xhtml requiere que especifiques también el type :

<script type="text/javascript">..</script> <!ELEMENT SCRIPT - - %Script; -- script statements --> <!ATTLIST SCRIPT charset %Charset; #IMPLIED -- char encoding of linked resource -- type %ContentType; #REQUIRED -- content type of script language -- src %URI; #IMPLIED -- URI for an external script -- defer (defer) #IMPLIED -- UA may defer execution of script -- >

type = content-type [CI] Este atributo especifica el lenguaje de scripting del contenido del elemento y anula el lenguaje de scripting predeterminado. El lenguaje de scripting se especifica como un tipo de contenido (por ejemplo, "texto / javascript"). Los autores deben proporcionar un valor para este atributo. No hay un valor predeterminado para este atributo.

Nota el énfasis anterior.

http://www.w3.org/TR/html4/interact/scripts.html

Nota: A partir de HTML5 (muy lejos), el atributo de type no es obligatorio y está predeterminado.


Con el último Firefox, debo usar:

<script type="text/javascript">...</script>

O bien, es posible que el script no se ejecute correctamente.


Esto es todo lo que se necesita:

<!doctype html> <script src="/path.js"></script>


Necesita utilizar <script type="text/javascript"> </script> menos que esté usando html5. En ese caso, le sugerimos que prefiera <script> ... </script> (porque el atributo type se especifica de manera predeterminada para ese valor)


<script type="text/javascript"></script> porque es la forma correcta y compatible con todos los navegadores