RUTINAS Javascript Web
RUTINAS Javascript Web
RUTINAS Javascript Web
Para la introduccin de rutinas JavaScript en nuestros cdigos HTML, debemos tener en cuenta que: Deben estar escritas exactamente igual al modo propuesto. Que deben situarse en el head y/o body segn nos indiquen. Nota: las etiquetas <head></head> y <body></body> han sido indicadas en color rojo para una mejor localizacin visual de dnde debemos pegar los scripts. En color verde hemos indicado los elementos del script que pueden ser modificados para poder personalizarlos o bien porque indiquen una ruta propia. 1.- Calcular la letra del NIF Calcula la letra del NIF al introducir un nmero de DNI. <head> <script> function averigua() { cadena="TRWAGMYFPDXBNJZSQVHLCKET" posicion = formulario.dni.value % 23 letra = cadena.substring(posicion,posicion+1) document.write("Nif: "+formulario.dni.value+" - "+letra) } </script> </head> <body> <form name="formulario"> DNI:<br> <input type="text" name="dni" maxlenght="9" size="9"> <input type="button" value="Ok" language="JavaScript" onclick="averigua()"> </form> </body>
2.- Convertir Pesetas a Euros Script para incorporar una calculadora de Pesetas a Euros. Cambiando los valores pertinentes en el script, puede servir para cualquier a otro tipo de monedas. <body> <div align="center"> <form name="formulario" method="get"> <table border="1" cellpadding="2" cellspacing="0" bgcolor="#f5f5dc" bordercolor="#999999"> <tr> <td width="90"> <div align="center"> <font face="Verdana"><strong>Pesetas</strong></font></div> </td> <td> <div align="right"> <p><font face="Verdana"><strong><input type="button" value="-->" onclick="aEuros(document.formulario.pts.value);"></strong></font></p> </div> </td> <td> <p><input type="button" value="<--" onclick="aPts(document.formulario.euros.value);"></p> </td> <td width="90"> <div align="center"> <font face="Verdana"><strong>Euros</strong></font></div> </td> </tr> <tr> <td rowspan="2" colspan="2"> <div align="center"> <p><input type="text" name="pts" size="15"><br> <a href="javascript:borrar(1);"><font face="Verdana" size="1">Borrar</font></a></p> </div> </td> <td rowspan="2" colspan="2"> <div align="center"> <p><input type="text" name="euros" size="15"><br>
7.- Efectos 3D en textos sin utilizar imgenes <head> <title>Letras 3D</title> <style> body { background:silver; font-family:Arrus BT,Garamond,Times New Roman; } div { position:absolute; } </style> <head> <body> <style> .info { font-family:Times New Roman; positon:relative;} .light { top:-1; left:-1; color:white;} .shade { top:+1; left:+1; color:pink; }
10
form.Email.value.indexOf('.', 0) == -1) { alert("Direccin de e-mail invlida"); form.Email.focus(); return; } form.submit(); } </script> </head> <body> <form METHOD="post" ACTION="../cgi-bin/formulario.cgi"> <div align="center"><center><table border="0" width="100%"> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>Apellido</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Apellido" size="20"></font></td> <td width="20%" align="right"><div align="right"><p><font face="Arial" color="#000000"><small>Nombre</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Nombre" size="20"></font></td> </tr> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>Domicilio</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Domicilio" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Ciudad</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Ciudad" size="20"></font></td> </tr> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Provincia</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Provincia" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Codigo Postal</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="CodPost" size="20"></font></td> </tr> <tr>
11
<td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Pais</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Pais" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>E-mail</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Email" size="20"></font></td> </tr> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>Telfono</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Telefono" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Fax</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Fax" size="20"></font></td> </tr> <tr> <td width="20%" align="right"></td> <td width="30%"></td> <td width="20%" align="right"><font face="Arial" color="#000000"> </font></td> <td width="30%"></td> </tr> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>Empresa</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="Empresa" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Direccin</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="DireccionEmpresa" size="20"></font></td> </tr> <tr> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Telfono</small></font></td> <td width="30%"><font color="#FFFFFF" face="Arial"><input type="text" name="telefonoEmpresa" size="20"></font></td> <td width="20%" align="right"><font face="Arial" color="#000000"><small>(*) Fax</small></font></td>
12
13
14
<head> <style type="text/css"> .greySelect {background-color:#333333; font-weight:bold;} .optionYellow{background-color:#ffcc00;} .optionRed{background-color:#cc0000;} .optionGreen{background-color:#336633;} </style> </head>
15
16
17
<head> <SCRIPT LANGUAGE="JavaScript"> <!-- Begin NewImg = new Array ( "imagen1.jpg", "imagen2.jpg", "imagen3.jpg" ); var ImgNum = 0;
18
19
<head> <title> titulo </title> <style type="text/css"> div.menuBar, div.menuBar a.menuButton, div.menu, div.menu a.menuItem { font-family: "MS Sans Serif", Arial, sans-serif; font-size: 8pt; font-style: normal; font-weight: normal; color: #000000; } div.menuBar { background-color: #d0d0d0; border: 2px solid; border-color: #f0f0f0 #909090 #909090 #f0f0f0; padding: 4px 2px 4px 2px; text-align: left; } div.menuBar a.menuButton { background-color: transparent; border: 1px solid #d0d0d0; color: #000000; cursor: default; left: 0px; margin: 1px; padding: 2px 6px 2px 6px; position: relative; text-decoration: none; top: 0px; z-index: 100; } div.menuBar a.menuButton:hover { background-color: transparent; border-color: #f0f0f0 #909090 #909090 #f0f0f0; color: #000000; }
20
21
22
23
24
25
26
27
28
29
30
31
32
<head> <style type="text/css"> #divNewsCont{position:absolute; width:350; height:150; overflow:hidden; top:260; left:140; clip:rect(0,350,150,0); visibility:hidden} #divNewsText{position:absolute; top:0; left:0} </style> <script type="text/javascript" language="JavaScript"> /* Thomas Brattli */ // Courtesy of SimplytheBest.net (http://simplythebest.net/info/dhtml_scripts.html) function checkBrowser(){ this.ver=navigator.appVersion this.dom=document.getElementById?1:0 this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; this.ie4=(document.all && !this.dom)?1:0; this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; this.ns4=(document.layers && !this.dom)?1:0; this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5) return this } bw=new checkBrowser() lstart=100 loop=true // Velocidad speed=40 pr_step=1 function makeObj(obj,nest){ nest=(!nest) ? '':'document.'+nest+'.' this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw. ns4?eval(nest+'document.'+obj):0; this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[o bj].style:bw.ns4?eval(nest+'document.'+obj):0;
33
34
26.- Abre una ventana popup en base al tamao de una imagen <head> <script LANGUAGE="JavaScript"> <!-function CargarFoto(img, ancho, alto){ derecha=(screen.width-ancho)/2; arriba=(screen.height-alto)/2; string="toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable= 1,width="+ancho+",height="+alto+",left="+derecha+",top="+arriba+""; fin=window.open(img,"",string); } // --> </script> </head> <body> <!-- imagen.jpg es el nombre del archivo, 240 es el ancho de la imagen y 350 el alto --> <a href="javascript:CargarFoto('imagen.jpg','240','350')">Abrir imagen</a> </body>
27.- Escribe tags en una ventana pop-up <body> <script language="javascript"> var win = window.open("", "win", "width=300,height=200"); var doc = win.document; doc.open("text/html", "replace"); doc.write("<HTML><HEAD><TITLE>New Document</TITLE></HEAD><BODY>Hello, world!</BODY></HTML>"); doc.close(); </script> </body> 28.- Permite abrir una ventana pantalla completa <head> <script LANGUAGE="JavaScript"> function pantallaCompleta(pagina) { window.open(pagina, '', 'fullscreen=yes, scrollbars=auto'); } </script> </head>
35
<body onLoad="pantallaCompleta('tu-pagina.htm');"> </body> 29.- Abrir URL en ventana popup <head> <SCRIPT LANGUAGE="JavaScript"> <!-function popUp(URL) { day = new Date(); id = day.getTime(); eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width =320,height=240');"); } // --> </script> </head> <body> <!-- SEGUNDO PASO: Utilizar el siguiente link para abrir la ventana --> <A HREF="javascript:popUp('tu-pagina.htm')">Abrir Ventana Pop Up</A> </body> 30.- Lluvia El fondo de pantalla se llena de puntos cayendo de forma similar a gotas de lluvia. <body> <SCRIPT LANGUAGE="JavaScript"> <!-- Begin var no = 50; var speed = 10; var ns4up = (document.layers) ? 1 : 0; var ie4up = (document.all) ? 1 : 0; var s, x, y, sn, cs; var a, r, cx, cy; var i, doc_width = 800, doc_height = 600; if (ns4up) { doc_width = self.innerWidth; doc_height = self.innerHeight; } else if (ie4up) {
36
37
38
39
var claves = new Array(3); usuarios[0] = "CARLOS"; usuarios[1] = "JUAN"; usuarios[2] = "PEPE"; claves[0] = "12345" claves[1] = "axcds" claves[2] = "atr99" for (i=0; i<usuarios.length; i++){ if ((usuarios[i]==document.miFormulario.usuario.value.toUpperCase()) && (claves[i]==document.miFormulario.password.value)){ mensaje = "Bienvenido al sistema..."; break; } } alert(mensaje); document.miFormulario.botonLimpiar.click(); document.miFormulario.usuario.focus(); } // final del comentario --> </SCRIPT> </head> <body> <CENTER> <H2>Manejando el objeto password...</H2> <FORM NAME="miFormulario" ACTION="javascript:informar()"> Introduzca su usuario y clave...<BR><BR> <TABLE CELLPADDING=5> <TR ALIGN=RIGHT> <TD>usuario:</TD><TD><INPUT TYPE=TEXT NAME="usuario" SIZE=15></TD></TR> <TR ALIGN=RIGHT> <TD>clave:</TD><TD><INPUT TYPE=PASSWORD NAME="password" SIZE=15></TD></TR> </TABLE><BR> <INPUT TYPE=SUBMIT NAME="botonEnviar" VALUE="Enviar"> <INPUT TYPE=RESET NAME="botonLimpiar" VALUE="Limpiar"> </FORM> <br> usuarios[0] = "CARLOS";<br> usuarios[1] = "JUAN";<br> usuarios[2] = "PEPE"; <p> claves[0] = "12345"<br> claves[1] = "axcds"<br> claves[2] = "atr99"</p> </CENTER> </body>
40
<head> <script language="javascript"> function AutoMensaje() { setTimeout("MuestraMensaje('Bienvenido!')", 5000) } function MuestraMensaje(mensaje) { alert(mensaje) } </script> </head> <body> <body onLoad="AutoMensaje()"> </body> 34.- Confirmacin antes de entrar a un pgina Este sencillo script ilustra el uso del mtodo confirm() del objeto window. Este mtodo muestra un cuadro de confirmacin con los botones de "Aceptar" y "Cancelar", y devuelve verdadero (true) o falso (false) en funcin del botn que pulse el usuario. Una aplicacin prctica es sta: se presenta un cuadro de confirmacin antes de cargar la pgina, y si el usuario pulsa sobre "Cancelar" (no desea continuar), se hace un history.go(-1) para volver a la pgina anterior. Es til para pginas con contenidos restringidos a adultos o que pueden herir la sensibilidad. <head> <script language="javascript"> function siono() { if (!confirm("AVISO: Deseas entrar a este sitio?")) history.go(-1) return " " }
41
<head> <script language="javascript"> //retardo entre imagenes en la reproduccion automatica (milisegundos) var retardo_rotacion = 1000 //indice imagen inicial actual = 0 //ir a la siguiente imagen function siguiente() { if (document.formulario.imagen[actual+1]) { document.images.visor.src = document.formulario.imagen[actual+1].value document.formulario.imagen.selectedIndex = ++actual } else inicio() } //ir a la imagen anterior function anterior() { if (actual-1 >= 0) { document.images.visor.src = document.formulario.imagen[actual-1].value document.formulario.imagen.selectedIndex = --actual } else ultimo() } //ir a la primera imagen function inicio() { actual = 0 document.images.visor.src = document.formulario.imagen[0].value document.formulario.imagen.selectedIndex = 0 } //ir a la ultima imagen
42
43
44