martes, 20 de diciembre de 2011

La etiqueta SCRIPT

Agregar scripts es cosa de todos los días, hay que copiar, pegar y rogar que funcionen. En general, no hay problemas con eso pero, nunca está de más entender la sintaxis y, si es posible, mejorarla.

Es esto lo que nos recuerda un artículo de CSS Tricks y muestra las variantes que solemos encontrar en los distintos ejemplos que pululan en la web.

¿Cuál debemos usar? En realidad, casi cualquiera de ellos porque los navegadores las entienden todas y no se hacen problemas por los detalles que sólo quedan para ser discutidos por los puristas.

Lo cierto es que para agregar un script, basta poner la etiqueta y no es necesario ningún atributo extra aunque para la w3.org sigue siendo obligatorio excepto si se utiliza un documento de tipo HTML5:
<script>
....... el código .......
</script>
Si queremos ser prolijos, podemos agregar el atributo type aunque en realidad, este sólo es necesario cuando el código no es JavaScript cosa bastante inusual:
<script type="text/javascript">
....... el código .......
</script>
Lo que no deberíamos usar más es el atributo language; es totalmente innecesario y es considerado obsoleto:
<script language="javascript">
....... el código .......
</script>

<script type="text/javascript" language="javascript">
....... el código .......
</script>
En las plantillas de Blogger, tenemos una restricción extra, como se trata de un documento de tipo XHTML, ciertos caracteres como < > y & están "prohibidos" cuando se utilizan fuera de ciertos contextos y por eso, debemos agregar CDATA, para evitar que el sistema nos marque un error o cambie las comillas por entities como &quot;. Hacerlo de este modo, evitará que el código se "ensucie" o que, simplemente, no funcione:
<script type="text/javascript">
//<![CDATA[
....... el código .......
//]]>
</script>
Pero ... en Blogger siempre hay peros; esto sólo es válido en la plantilla misma, no lo es cuando se trata de elementos de tipo HTML o si agregamos scripts en las entradas.

Lo que lleva a recordar que no siempre es necesario que los scripts a utilizar estén en la plantilla; por el contrario, cuando se trata de cosas eventuales, efectos que usamos de tanto en tanto, podemos intentar agregarlas directamente en la entrada y de ese modo, ayudaremos a que nuestro sitio se abra con mayor velocidad ya que no se cargarán cosas innecesarias.

En un tiempo, esto era complicado porque había que escribir todo el script en una sola línea pero, en los nuevos editores de Blogger ese problema ya no existe y el script puede ser escrito de modo normal. Sin embargo, hay que ver caso por caso ya que hay ocasiones en que determinados caracteres como < siguen limitándonos ya que las reglas de Blogger son poco claras y las cambian cuando quieren.

No hay comentarios:

Publicar un comentario