Documente Academic
Documente Profesional
Documente Cultură
Universidad de Cantabria
gutierjm@unican.es
local
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 2
Estructura de un documento HTML
Cada documento HTML tiene asociada una dirección URL (Localizador uniforme
de recursos) al que se accede mediante el protocolo HTTP
http://personales.unican.es/gutierjm
<HTML>
<!-- Documento HTML de prueba -->
<HEAD>
<TITLE> Prueba </TITLE>
</HEAD>
<BODY>
El navegador interpreta y
visualiza el contenido
</BODY>
</HTML>
XML
Schema
http://wwws.sun.com/software/xml/ http://www.oasis-open.org/cover/sgml-xml.html
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 11
SVG. Scalable Vector Graphics
La notación matemática es de un
extremado rigor y está libre de ambigüedad.
Contenido Estructura
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 13
Hojas de estilo CSS
<HTML>
<HEAD>
<TITLE>ejemplo1</TITLE>
</HEAD>
<BODY>
<P STYLE=color:blue;font-size:18pt;>
Este párrafo tiene aplicado un estilo
<P>
y este otro no.
</BODY>
</HTML>
<STYLE TYPE="text/css">
<!—
Etiqueta1:{propiedad1:valor;...propiedadn:valor}
<HTML>
/* podemos introducir comentarios */
<HEAD>
...
<TITLE>ejemplo3</TITLE>
Etiquetam:{propiedad1:valor;...}
<STYLE>
//-->
<!--
</STYLE>
P {font-family:Verdana;color=green}
B {color=blue}
-->
</STYLE>
</HEAD>
<BODY>
<P>Fuente de estilo Verdana y color
verde, la
<B> negrita </B> en azul
</BODY>
</HTML>
/* Fichero estilo1.css */
<!-- <HTML>
P {font-family:Verdana;color=green} <HEAD>
B {color=blue} <TITLE>ejemplo3</TITLE>
--> <LINK REL="stylesheet"
TYPE="text/css"
HREF="estilo1.css">
</HEAD>
<BODY>
<P>Fuente de estilo Verdana y color
azul, la
<B> negrita </B> en verde
</BODY>
</HTML>
/* fichero de estilo */
P { font-size : 12pt;
font-family : arial,helvetica;
font-weight : normal;
}
H1 { font-size : 36pt;
font-family : verdana,arial;
text-decoration : underline;
text-align : center;
background-color : Teal;
}
TD { font-size : 10pt;
font-family : verdana,arial;
text-align : center;
background-color : #666666;
}
BODY { background-color : #006600;
font-family : arial;
color : White;
}
EJEMPLO
http://www.canoma.com/vrml
http://web3d.about.com/
http://www.cai.com/cosmo/ http://www.web3d.org
http://www.plusmedia.es/
http://www.flash-es.net/topten/topten.html
http://www.programatium.com/flash/
http://www.macromedia.com
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 28
Aplicaciones cliente / servidor
• Independencia de plataforma
Java es un potente lenguaje de (UNIX, Windows, Mac,...).
programación orientado a objetos. • Orientado a objetos
Todo el entorno de desarrollo (SDK) (Obligado a implementar).
para crear ficheros .class con código • Seguridad y confianza:
lenguaje, compilador, interprete
pseudocompilado para intérpretes
Java. • Simplicidad:
gestión automática de “basura”.
Los programas son compilados en
• Estándar.
ficheros “pseudo-ejecutables” que se
pueden ser interpretados: • Computación distribuida.
– (aplicaciones) máquina virtual, o • “Clases" potentes para desarrollo.
(GUI,NET,BD)
– (applets) plug-in de un navegador Web.
• Generación rápida de código.
Tiene reglas estrictas sobre cómo
• Documentación y Mantenimiento.
declarar y utilizar variables.
(control estricto de tipos) • Rendimiento????.
http://java.sun.com/
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 31
Tecnologías Actuales Java
JavaTM
technologies:
•J2SETM ,
•J2EETM ,
•J2METM,
•JAX XML.
SDK
(Standard Development Kit)
JRE
(Java RunTime Enviroment)
EjemploApplet.html
<html><head></head><body>
<applet code="MiApplet.class" width="100" height="100">
</body></html>
Ver Ejemplo
Netscape: document.layers["ID"].visibility
IE: document.all["ID"].style.visibility
document.getElementById("ID")
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 36
Teniendo en cuenta el tipo de navegador
n = (document.layers) ? 1:0
ie = (document.all) ? 1:0
n6 = (document.getElementById) ? 1:0
function show() {
if (n) document.uno.visibility = "show"
if (n6) document.getElementById('uno').style.visibility = "visible"
if (ie) uno.style.visibility = "visible"
}
<html>
<head>
<title>Ejemplo Capas - Curso JavaScript</title>
</head>
<body>
Pagina ejemplo de capas
<div id="c1" style="position:absolute;
left:245px; top:168px; width:157px; height:151px;
z-index:1; visibility: visible">
<img src="imagenes/perrito-marron.jpg">
Esta es la primera capa, la del perro marron </div>
</body>
</html>
<body>
Pagina ejemplo de capas
<div id="c1" style="position:absolute;
left:250px; top:150px;
z-index:1; visibility: visible;">
<img src="imagenes/perrito-marron.jpg" width="157" height="136">
Esta es la primera capa, la del perro marron </div>
</body>
</html>
<body bgcolor="#FFFFFF">
<div id="capamarron" style="position:absolute; width:157px; height:151px; z-index:1;
left: 165px; top: 138px; visibility: hidden">
<img src="imagenes/perrito-marron.jpg" width="223" height="275">
Esta es la primera capa, la del perro marron
</div>
<body>
Para mover una CAPA<br>
<input type="button" value="Pulsa" onclick="corre()">
<DIV ID="c1" >
<img src="corredor.gif" width="114" height="134"
alt="" border="0">
</DIV>
</body></html>
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 43
Objetos y Eventos
con JavaScript
José M. Gutiérrez
Universidad de Cantabria
gutierjm@unican.es
window
+--frames
+--location
+--history
+--document
+--forms
| |
| elements (text, button)
|
+--layers
+--links
+--Plugin
+--anchors
Facilidad de desarrollo.
Fácil modificación
– de clases
– estructural
Fácil comprensión.
<BODY>
<P>Hola otra vez ! </P>
</BODY>
</HTML>
Acciones en las Marcas <>
<HTML>
<HEAD> </HEAD>
<BODY>
<FORM>
<INPUT TYPE="BUTTON"
ONCLICK="alert('Hola !')">
</FORM>
</BODY> </HTML>
Generamos un sencillo script para añadir información al final de una página Web,
en concreto la fecha de modificación.
<SCRIPT LANGUAGE="JAVASCRIPT">
document.write("Ultima modificacion:");
document.write(document.lastModified)
</SCRIPT>
Un string literal es cero o más caracteres encerrados entre (") o (') comillas.
Ejemplos de string literales:
“hola"
‘Java' Literales
“una linea \n otra linea"
</SCRIPT>
<!-- FIN SCRIPT --> Caracteres Especiales
</head>
\b Backspace
<body> \f Form feed
\n New line
\r Carriage return
</body> \t Tab
</html> \' Apostrophe or single quote
\" Double quote
<body>
</body>
</html>
<body>
Prompt(String,Valor por defecto)
</body>
</html>
<body>
</body>
</html>
<html>
<head>
<title>Var2</title>
<!-- INICIO SCRIPT -->
<SCRIPT LANGUAGE="JAVASCRIPT">
var resul=0;
function square(number) {
resul= number * number;
}
</SCRIPT>
<!-- FIN SCRIPT -->
</head>
<body>
</body>
</html>
</body>
</html>
<body>
</body>
</html>
<SCRIPT>
function Quiniela() {
for (var i=0; i < 16; i++) {
var casilla=(Math.floor(3*Math.random()));
if (casilla==0){ rellenar="1"}
else{
if (casilla==1){rellenar="X"}
else {rellenar="2"}
}
document.write("Casilla \t\t\t"+i+"\t\t=\t"+rellenar +"<br>");
}
}
</SCRIPT>
</head>
<body onload="Quiniela()">
</body>
<body onload="Acertijo()">
</body>
</html>
<SCRIPT LANGUAGE="JAVASCRIPT">
function Factorial(num){
if (num>1){
return num*Factorial(num-1);
} else {
return num;
}
}
</SCRIPT>
</head>
<body>
<SCRIPT LANGUAGE="JAVASCRIPT">
var numero=prompt("Dame un número entero","0");
var calcula=Factorial(numero);
document.write("Factorial de "+numero+" = <b>"+calcula+"</b>");
</SCRIPT>
</body>
</html>
Las asignaciones (=) son también como en C y C++, incluyendo +=, -=, etc.
En cuanto a los operadores lógicos tenemos ||, &&, !, ^ (xor), << y >>
y las comparaciones son <, >, <=, >=, == y !=.
Palabras reservadas por ECMA para futuras extensiones (no incluidas en v1.2).
<html>
<head>
<script language="JavaScript">
<!-- hide
function calculation() {
var x= 12;
var y= 5;
var result= x + y;
alert(result);
}
// -->
</script>
</head>
<body>
<form>
<input type="button" value="Calculate" onClick="calculation()">
</form>
</body>
</html>
<body onload="alert(factorial(6))">
<script language="javascript">
var texto = new Array("hola");
var numero = new Array(1,2,3,4);
var win=window.open('','ventana');
for (i in texto)
{
win.document.write(texto[i]);
}
for (i in numero)
{
win.document.write(numero[i]);
}
</script>
Web Dinámica (José M. Gutiérrez, Santander) 2005, slide 70