You are on page 1of 4

JavaScript interno delimitado por etiquetas.

JAVASCRIPT INTERNO
<SCRIPT TYPE=
"TEXT/JAVASCRIPT">.
APRENDERAPROGRAMAR.COM
INTRPRETE JAVASCRIPT .
FUNCIN EJEMPLO
BSICO. (CU01109E)

Seccin: Cursos
Categora: Tutorial bsico del programador web: JavaScript desde cero

Fecha revisin: 2029

Resumen: Entrega n9 del Tutorial bsico JavaScript desde cero.

Autor: Csar Krall

aprenderaprogramar.com, 2006-2029
JavaScript interno delimitaado por etique
etas.

INCLUIR JAVASCRIPT
J EN WEBS.

Hemos visto que podemos incluirr JavaScript embebido


dentro de una
u lnea de HTML. Pero o esto ser
o tengamos que escribir pequeos programas
poco prcctico cuando p (ssera muy coonfuso entre emezclarlo
todo con el HTML). Po
or eso vamos a ver dos formas adicio onales para escribir
e JavaSScript de forrma clara y
ordenada: JavaScript interno delim
mitado por etiquetas,
e o JavaScript
J en
n archivos exxternos.

JAVASCRIIPT INTERNO
O DELIMITAD
DO POR ETIQ
QUETAS (TAG
GS)

De la misma forma que el cdigo o CSS puede aparecer aggrupado entrre etiquetas <style> </style>,
< el
cdigo JavvaScript ir entre
e etiquettas <script> </script> tal
t y como mostramos
m a continuacin
n:

<head>

<script type="text/ja
t avascript">
function
n nombreDeFu uncion1() {
aqu el
e cdigo de laa funcin
}
function
n nombreDeFu uncion2() {
aqu el
e cdigo de laa funcin
}

</scriptt>
</head>>

Dentro dee las etiquetas <head> </head> incluiremos una etiquetta de apertu ura de declaaracin de
script <sccript type=ttext/javascript>, a continuacin co olocaremos la definicin
n de una, dos
d o ms
funcioness JavaScript y terminaremmos cerrando o con la etiqu
ueta </scriptt>.

En muchaas pginas webw y mucho os libros vers que se esscribe <scriptt> </scrip
pt> sin hacerr uso de la
definicin
n de type. El motivo para esto es qu ue JavaScriptt se ha convvertido en unn estndar reconocido
por todos los naveggadores y ya no se co onsidera neccesario espeecificar typee=text/javasscript. En
versiones antiguas dee HTML se co onsideraba necesario,
n peero en las acctuales no ess necesario especificar
e
type =teext/javascriptt. Todos lo
os navegado ores actualess reconocern JavaScrip pt sin necesiidad de la
especificaacin type.

En algunaas pginas web


w antiguaas te podrss encontrar incluso otro
os tipos de sintaxis com
mo <script
language==JavaScript>....</scriptt>.

aprenderraprogramar.co
om, 2006-2029
JavaScript interno delimitado por etiquetas.

Los motivos por los que se introdujo la especificacin type son varios:

a) Existan (y existen) distintos lenguajes de script, es decir, adems de javascript nos podemos
encontrar otros lenguajes. El uso de type se concibi para indicarle al navegador qu lenguaje
era el que usaba el script. Por ejemplo type="text/vbscript" indicara lenguaje VBscript,
type="text/tcl" indicara lenguaje TCL, etc.

b) Fue parte de la especificacin oficial de algunas versiones de HTML.

Desde el momento en que todos los navegadores reconocen JavaScript sin necesidad de la
especificacin type, usarla o no resulta indistinto y no vamos a preocuparnos ms por este asunto. Por
otro lado ten en cuenta que la etiqueta <script> y su contenido no es lenguaje JavaScript, sino lenguaje
HTML.

Una cuestin importante e interesante que ha surgido al ver cmo se define JavaScript es que el cdigo
JavaScript se escribe normalmente dentro de funciones. Hablaremos sobre las funciones con ms
detalle ms adelante. De momento, simplemente consideraremos que una funcin es un fragmento de
cdigo que tiene un nombre, y que puede ser invocado desde algn punto del cdigo HTML para ser
ejecutado. Para escribir una funcin especificaremos de momento: function nombreDeLaFuncionAqui {
cdigo } Las funciones introducen algo interesante: cuando tengamos que hacer algo repetidas veces,
no tendremos que escribir el cdigo varias veces, sino simplemente invocar a la funcin para que se
ejecute.

Veamos un ejemplo. Escribe este cdigo y gurdalo en un archivo de extensin html:

<html>
<head>
<title>Portal web - aprenderaprogramar.com</title> <meta charset="utf-8">
<script type="text/javascript">
function mostrarMensaje1() {
alert('Bienvenido al curso JavaScript de aprenderaprogramar.com');
}
function mostrarMensaje2() {
alert('Ha hecho click sobre el prrafo inferior');
}
</script>
</head>
<body>
<div>
<p>Aqu un prrafo de texto situado antes de la imagen, dentro de un div contenedor</p>
<img onclick="mostrarMensaje1()" src="http://i.imgur.com/afC0L.jpg" alt="Notepad++" title="Notepad++,
un til editor de texto">
<p onclick="mostrarMensaje2()">Aqu otro prrafo de texto. JavaScript es un lenguaje utilizado para dotar
de efectos dinmicos a las pginas web.
</p>
</div>
</body>
</html>

aprenderaprogramar.com, 2006-2029
JavaScript interno delimitado por etiquetas.

Visualiza la pgina. El resultado esperado ser que al hacer click sobre la imagen se muestre un mensaje
(el mensaje 1), mientras que al hacer click sobre el prrafo inferior se mostrar otro mensaje (el
mensaje 2). Aqu vemos cmo hemos definido un script. Nos podemos hacer algunas preguntas como:

Puede escribirse un script en otro lugar distinto del comprendido entre las etiquetas <head>
</head>?
La respuesta es que s. La mayora de los navegadores aceptarn que el script est en casi cualquier
parte. Prueba a cambiar el cdigo y ponerlo en distintos lugares y comprueba los resultados. Pero
poniendo el cdigo fuera de <head> </head> podemos tener problemas con algunos navegadores, o
podemos tener problemas en algunos casos en que el cdigo deba guardar cierto orden. Para no tener
problemas pondremos siempre los scripts dentro de las etiquetas <head> </head>.

Pueden escribirse varios scripts en una misma pgina web?


La respuesta es que s. Por ejemplo esto sera vlido:

<script type="text/javascript">
function mostrarMensaje1() {
alert('Bienvenido al curso JavaScript de aprenderaprogramar.com');
}
</script>
<script type="text/javascript">
function mostrarMensaje2() {
alert('Ha hecho click sobre el prrafo inferior');
}
</script>

Aqu en vez de un script con dos funciones, tenemos dos scripts cada uno de ellos con una funcin.
Cul es mejor opcin, un script o dos scripts? Recordar que JavaScript es un cdigo que es
interpretado por el navegador (en concreto por una parte del navegador a la que se denomina
precisamente intrprete JavaScript). Al escribir dos scripts estamos obligando al intrprete a leer ms
lneas, y considerar dos unidades de scripts en lugar de una. Esto ralentiza la carga de la pgina web y
su ejecucin, por tanto normalmente incluiremos el cdigo dentro de un nico script, excepto cuando
justificadamente necesitemos o sea razonable hacerlo de otra manera. En pginas web avanzadas es
posible que encuentres muchos scripts que salen de muchos sitios diferentes.

Qu extensin puede tener un script?


La que nosotros queramos. Puede ser desde una lnea hasta miles de lneas.

Prxima entrega: CU01110E

Acceso al curso completo en aprenderaprogramar.com -- > Cursos, o en la direccin siguiente:


http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=78&Itemid=206

aprenderaprogramar.com, 2006-2029