J Query
J Query
pagina1.html
<html>
<head>
<title>Problema</title>
</head>
<body>
<h2>Captura del evento click de un control HTML de tipo button.</h2>
<a href="pagina2.html">Método tradicional con las funciones
del DOM </a><br>
<a href="pagina3.html">Utilizando la librería jQuery</a><br>
</body>
</html>
pagina2.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="funciones1.js"></script>
</head>
<body>
<input type="button" id="boton1" value="presioname">
</body>
</html>
funciones1.js
addEvent(window,'load',inicializarEventos,false);
function inicializarEventos()
{
var boton1=document.getElementById('boton1');
addEvent(boton1,'click',presionBoton,false);
}
function presionBoton(e)
{
alert('se presionó el botón');
}
function addEvent(elemento,nomevento,funcion,captura)
{
if (elemento.attachEvent)
{
elemento.attachEvent('on'+nomevento,funcion);
return true;
}
else
if (elemento.addEventListener)
{
elemento.addEventListener(nomevento,funcion,captura);
return true;
}
else
return false;
}
pagina3.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones2.js"></script>
</head>
<body>
<input type="button" id="boton1" value="presioname">
</body>
</html>
funciones2.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(presionBoton)
}
function presionBoton()
{
alert("Se presionó el botón");
}
Problema:
Ver solución
pagina1.html
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<h1 id="titulo1">Primer título</h1>
<h1 id="titulo2">Segundo título</h1>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#titulo1");
x.click(presionTitulo1)
x=$("#titulo2");
x.click(presionTitulo2)
}
function presionTitulo1()
{
var x;
x=$("#titulo1");
x.css("color","#ff0000");
x.css("background-color","#ffff00");
x.css("font-family","Courier");
}
function presionTitulo2()
{
var x;
x=$("#titulo2");
x.css("color","#ffff00");
x.css("background-color","#ff0000");
x.css("font-family","Arial");
}
Como va ser costumbre siempre que trabajemos con esta librería
primero creamos un objeto jquery a partir de la referencia a
'document' y luego llamamos al método ready indicándole el
nombre de la función que debe ejecutarse luego de generarse el
árbol de elementos HTML para la página:
var x;
x=$(document);
x.ready(inicializarEventos);
function presionTitulo2()
{
var x;
x=$("#titulo2");
x.css("color","#ffff00");
x.css("background-color","#ff0000");
x.css("font-family","Arial");
}
Problema:
Confeccionar una página que muestre una tabla con dos filas
cambiar el color de fondo cuando sea presionada con el mouse.
Ver solución
pagina1.html
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<table border="1">
<tr>
<td>1111111111</td><td>1111111111</td><td>1111111111</td><td>1111111111</td>
</tr>
<tr>
<td>2222222222</td><td>2222222222</td><td>2222222222</td><td>2222222222</td>
</tr>
<tr>
<td>3333333333</td><td>3333333333</td><td>3333333333</td><td>3333333333</td>
</tr>
<tr>
<td>4444444444</td><td>4444444444</td><td>4444444444</td><td>4444444444</td>
</tr>
<tr>
<td>5555555555</td><td>5555555555</td><td>5555555555</td><td>5555555555</td>
</tr>
</table>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("tr");
x.click(presionFila);
}
function presionFila()
{
var x;
x=$(this);
x.css("background-color","eeeeee");
}
Problema:
Ver solución
pagina1.html
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(ocultarItem);
}
function ocultarItem()
{
var x;
x=$("#lista1 li");
x.hide();
}
Problema:
Confeccionar una página que muestre dos tablas con tres filas cada
una. Cambiar el color de fondo de cada fila de la primer tabla
cuando sea presionada con el mouse.
Ver solución
pagina1.html
funciones.js
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<p>Cuales de los siguientes lenguajes son orientados a objetos:
<span class="resaltado">Java</span>, VB6, <span class="resaltado">C+
+</span>,C,
<span class="resaltado">C#</span>, Cobol ?</p>
<input type="button" id="boton1" value="ver resultado">
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(resaltar);
}
function resaltar()
{
var x;
x=$(".resaltado");
x.css("background-color","ffff00");
}
.resaltado{
color:#000000;
}
El código nuevo es:
x=$(".resaltado");
x.css("background-color","ffff00");
Problema:
Ver solución
pagina1.html
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(extraerTexto);
x=$("#boton2");
x.click(modificarTexto);
x=$("#boton3");
x.click(modificarDatosTabla);
}
function extraerTexto()
{
var x=$("#parrafo1");
alert(x.text());
}
function modificarTexto()
{
var x=$("#parrafo1");
x.text("Nuevo texto del párrafo");
}
function modificarDatosTabla()
{
var x=$("td");
x.text("texto nuevo");
}
Problema:
Ver solución
pagina1.html
Para fijar el valor de una propiedad (si hay muchos elementos que
recupera la función $, se inicializan para todos):
$(elemento).attr(nombre de propiedad,valor)
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Añadir
propiedad border"><br>
<input type="button" id="boton2" value="Recuperar
valor de la propiedad border"><br>
<input type="button" id="boton3" value="Eliminar la
propiedad border">
<table id="tabla1">
<tr>
<td>1111111111</td><td>1111111111</td><td>1111111111</td><td>1111111111</td>
</tr>
<tr>
<td>2222222222</td><td>2222222222</td><td>2222222222</td><td>2222222222</td>
</tr>
<tr>
<td>3333333333</td><td>3333333333</td><td>3333333333</td><td>3333333333</td>
</tr>
</table>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(agregarPropiedadBorder);
x=$("#boton2");
x.click(recuperarPropiedadBorder);
x=$("#boton3");
x.click(eliminarPropiedadBorder);
}
function agregarPropiedadBorder()
{
var x=$("#tabla1");
x.attr("border","1");
}
function recuperarPropiedadBorder()
{
var x=$("#tabla1");
if (x.attr("border")!=undefined)
alert(x.attr("border"));
else
alert("No está definida la propiedad border en la tabla");
}
function eliminarPropiedadBorder()
{
var x=$("#tabla1");
x.removeAttr("border");
}
Ver solución
pagina1.html
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Asociar clase">
<input type="button" id="boton2" value="Desasociar
clase">
<div id="descripcion">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas
de internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega en la pantalla de acuerdo a su objetivo. Veremos que hay
elementos para disponer
imágenes
sobre una página, hipervínculos que nos permiten dirigirnos a otra
página, listas, tablas para tabular datos, etc.</b>
<p>Para poder crear una página HTML se requiere un simple editor
de texto (en nuestro caso emplearemos este sitio) y un navegador de internet
(IExplorer,
FireFox etc.),
emplearemos el navegador que en este preciso momento está utilizando (recuerde
que usted está viendo en este preciso momento una página HTML con su
navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(asociarClase);
x=$("#boton2");
x.click(desasociarClase);
}
function asociarClase()
{
var x=$("#descripcion");
x.addClass("recuadro");
}
function desasociarClase()
{
var x=$("#descripcion");
x.removeClass("recuadro");
}
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
Problema:
Ver solución
pagina1.html
El método:
html([bloque html])
Y el método:
html()
Nos retorna el bloque html contenido a partir del elemento html que
hace referencia el objeto jQuery.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Mostrar formulario">
<input type="button" id="boton2" value="Mostrar elementos
html del formulario"><br>
<div id="formulario">
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(presionBoton1);
x=$("#boton2");
x.click(presionBoton2);
}
function presionBoton1()
{
var x;
x=$("#formulario");
x.html('<form>Ingrese nombre:<input type="text"
id="nombre"><br>Ingrese
clave:<input type="text" id="clave"><br><input
type="submit" value="confirmar"></form>');
}
function presionBoton2()
{
var x;
x=$("#formulario");
alert(x.html());
}
Problema:
Ver solución
pagina1.html
Por último con este código se registra para todos los elementos
"button" que dependen del div con valor de id igual a "formulario1":
var x;
x=$("#formulario1 button");
x.click(presionBoton)
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<p>Párrafo fuera de la tabla</p>
<table border="1">
<tr>
<td><p>Párrafo dentro de la primer tabla.</p></td><td><p>Párrafo
dentro de la primer tabla.</p></td>
</tr>
</table>
<br>
<table border="1" id="tabla2">
<tr>
<td><p>Párrafo dentro de la segunda tabla.</p></td><td><p>Párrafo
dentro de la segunda tabla.</p></td>
</tr>
</table>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("p");
x.click(presionParrafoDocumento);
x=$("#tabla2 p");
x.click(presionpresionParrafoSegundaTabla);
}
function presionParrafoDocumento()
{
alert('se presionó un párrafo del documento');
}
function presionpresionParrafoSegundaTabla()
{
alert('se presionó un párrafo contenido en la segunda tabla.');
}
Problema:
Ver solución
pagina1.html
funciones.js
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<a href="http://www.lavoz.com.ar">La Voz del Interior</a>
<br>
<a href="http://www.lanacion.com.ar">La nación</a>
<br>
<a href="http://www.clarin.com.ar">El clarín</a>
<br>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("a");
x.mouseover(entraMouse);
x.mouseout(saleMouse);
}
function entraMouse()
{
$(this).css("background-color","#ff0");
}
function saleMouse()
{
$(this).css("background-color","#fff");
}
Problema:
Crear una tabla con dos filas y dos columnas, cambiar el color del
interior de la casilla cuando ingresamos con el mouse y dejarla con
dicho color cuando retiramos la flecha.
Ver solución
pagina1.html
3 - Evento hover.
jQuery no solo mapea los eventos del DOM sino que provee otros
que combinan estos.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<a href="http://www.lavoz.com.ar">La Voz del Interior</a>
<br>
<a href="http://www.lanacion.com.ar">La nación</a>
<br>
<a href="http://www.clarin.com.ar">El clarín</a>
<br>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("a");
x.hover(entraMouse,saleMouse);
}
function entraMouse()
{
$(this).css("background-color","#ff0");
}
function saleMouse()
{
$(this).css("background-color","#fff");
}
Utilizamos solamente el evento hover para cambiar el color de
fondo del ancla cuando se ingresa la flecha del mouse y retornarla
al color original cuando se sale:
var x;
x=$("a");
x.hover(entraMouse,saleMouse);
13 - Evento hover.
Simulador (Cuando presiona el botón "ejecutar el programa" se graban todos los cuadros de
texto y se ejecuta el primero de la lista mostrando en una página el resultado)
Problema:
Crear una tabla con dos filas y dos columnas, cambiar el color del
interior de la casilla cuando ingresamos con el mouse y regresarla
al original cuando salimos.
Ver solución
pagina1.html
funciones.js
14 - Evento mousemove.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script language="javascript" src="funciones.js"
type="text/javascript"></script>
</head>
<body>
<p id="corx">coordenada x=</p>
<p id="cory">coordenada y=</p>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$(document);
x.mousemove(moverMouse);
}
function moverMouse(event)
{
var x;
x=$("#corx");
x.text("coordenada x="+event.clientX);
x=$("#cory");
x.text("coordenada y="+event.clientY);
}
14 - Evento mousemove.
Simulador (Cuando presiona el botón "ejecutar el programa" se graban todos los cuadros de
texto y se ejecuta el primero de la lista mostrando en una página el resultado)
Problema:
Ver solución
pagina1.html
Implementemos una página que contenga una tabla con una fila y
dos columna, al presionar el botón del mouse dentro de una casilla
de la tabla cambiar el color de fondo de la misma por amarillo y
cuando levantamos el dedo del mouse regresar a color blanco la
casilla.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<table border="1">
<tr>
<td>1111111111</td><td>1111111111</td>
</tr>
</table>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("td");
x.mousedown(presionaMouse);
x.mouseup(sueltaMouse);
}
function presionaMouse()
{
$(this).css("background-color","#ff0");
}
function sueltaMouse()
{
$(this).css("background-color","#fff");
}
Problema:
Ver solución
16 - Evento dblclick.
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<div id="recuadro">
<h1>Doble clic para ocultar este recuadro</h1>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#recuadro");
x.dblclick(dobleClic);
}
function dobleClic()
{
var x;
x=$(this);
x.hide()
}
estilos.css
#recuadro {
color:#aa0;
background-color:#ff0;
position:absolute;
text-align:center;
left:40px;
top:30px;
width:800px;
height:70px;
}
16 - Evento dblclick.
Simulador (Cuando presiona el botón "ejecutar el programa" se graban todos los cuadros de
texto y se ejecuta el primero de la lista mostrando en una página el resultado)
Problema:
Ver solución
pagina1.html
17 - Evento focus.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<form action="#" method="post">
<input type="text" name="buscar" id="buscar"
value="Buscar..." size="20">
</form>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#buscar");
x.focus(tomaFoco);
}
function tomaFoco()
{
var x=$("#buscar");
x.attr("value","");
}
17 - Evento focus.
Simulador (Cuando presiona el botón "ejecutar el programa" se graban todos los cuadros de
texto y se ejecuta el primero de la lista mostrando en una página el resultado)
Problema:
Ver solución
pagina1.html
18 - Evento blur.
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<form action="#" method="post">
<input type="text" name="text1" id="text1" value="Hola"
size="20">
<br>
<input type="text" name="text2" id="text2" value="Hola"
size="20">
</form>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#text1");
x.focus(tomaFoco);
x.blur(pierdeFoco);
x=$("#text2");
x.focus(tomaFoco);
x.blur(pierdeFoco);
}
function tomaFoco()
{
var x=$(this);
x.css("color","#f00");
}
function pierdeFoco()
{
var x=$(this);
x.css("color","#00f");
}
estilos.css
#text1,#text2 {
color:#00f;
}
18 - Evento blur.
Simulador (Cuando presiona el botón "ejecutar el programa" se graban todos los cuadros de
texto y se ejecuta el primero de la lista mostrando en una página el resultado)
Problema:
Ver solución
pagina1.html
19 - Manipulación de los elementos del
DOM.
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<h1>Métodos para manipular nodos del DOM con jQuery.</h1>
<ul>
<li>Primer item.</li>
<li>Segundo item.</li>
<li>Tercer item.</li>
<li>Cuarto item.</li>
</ul>
<input type="button" id="boton1" value="Eliminar la lista completa."><br>
<input type="button" id="boton2" value="Restaurar Lista"><br>
<input type="button" id="boton3" value="Añadir un elemento al final de la
lista"><br>
<input type="button" id="boton4" value="Añadir un elemento al principio de la
lista"><br>
<input type="button" id="boton5" value="Eliminar el último elemento."><br>
<input type="button" id="boton6" value="Eliminar el primer elemento."><br>
<input type="button" id="boton7" value="Eliminar el primero y segundo
elemento."><br>
<input type="button" id="boton8" value="Eliminar los dos últimos."><br>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(eliminarElementos)
x=$("#boton2");
x.click(restaurarLista)
x=$("#boton3");
x.click(anadirElementoFinal)
x=$("#boton4");
x.click(anadirElementoPrincipio)
x=$("#boton5");
x.click(eliminarElementoFinal)
x=$("#boton6");
x.click(eliminarElementoPrincipio)
x=$("#boton7");
x.click(eliminarPrimeroSegundo)
x=$("#boton8");
x.click(eliminarDosUltimos)
}
function eliminarElementos()
{
var x;
x=$("ul");
x.empty();
}
function restaurarLista()
{
$("ul").html('<li>Primer item.</li><li>
Segundo item.</li><li>Tercer item.</li><li>Cuarto item.</li>');
}
function anadirElementoFinal()
{
var x;
x=$("ul");
x.append("<li>otro item al final</li>");
}
function anadirElementoPrincipio()
{
var x;
x=$("ul");
x.prepend("<li>otro item al principio</li>");
}
function eliminarElementoFinal()
{
var x;
x=$("li");
var cantidad=x.length;
x=x.eq(cantidad-1);
x.remove();
}
function eliminarElementoPrincipio()
{
var x;
x=$("li");
x=x.eq(0);
x.remove();
}
function eliminarPrimeroSegundo()
{
var x;
x=$("li");
x=x.lt(2);
x.remove();
}
function eliminarDosUltimos()
{
var x;
x=$("li");
x=x.gt(x.length-3);
x.remove();
}
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Ocultar recuadro">
<input type="button" id="boton2" value="Mostrar recuadro">
<div id="descripcion" class="recuadro">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas
de internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega
en la pantalla de acuerdo a su objetivo. Veremos que hay elementos para
disponer
imágenes
sobre una página, hipervínculos que nos permiten dirigirnos a otra
página, listas, tablas
para tabular datos, etc.</b>
<p>Para poder crear una página HTML se requiere un simple editor
de texto (en nuestro caso
emplearemos este sitio) y un navegador de internet (IExplorer, FireFox etc.),
emplearemos
el navegador que en este preciso momento está utilizando (recuerde que
usted está viendo
en este preciso momento una página HTML con su navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
propuestos y modifique
los que se presentan ya resueltos.<p>
<p>Este curso lo que busca es acercar el lenguaje HTML a una persona que
nunca antes trabajó
con el mismo. No pretende mostrar todas los elementos HTML en forma
alfabética.</p>
<p>Como veremos, de cada concepto se presenta una parte teórica,
en la que se da una
explicación completa, luego se pasa a la sección del ejercicio resuelto
donde podemos
ver el contenido de la página HTML y cómo la visualiza el navegador.
Por último y
tal vez la sección más importante de este tutorial es donde se propone
que usted
haga páginas en forma autónoma (donde realmente podrá darse
cuenta si el concepto quedó firme).</p>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(ocultarRecuadro);
x=$("#boton2");
x.click(mostrarRecuadro);
}
function ocultarRecuadro()
{
var x=$("#descripcion");
x.hide("slow");
}
function mostrarRecuadro()
{
var x=$("#descripcion");
x.show("fast");
}
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
Problema:
Ver solución
pagina1.html
21 - Efectos con los métodos fadeIn y
fadeOut.
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Ocultar recuadro">
<input type="button" id="boton2" value="Mostrar recuadro">
<div id="descripcion" class="recuadro">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas
de internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega en la pantalla
de acuerdo a su objetivo. Veremos que hay elementos para disponer imágenes
sobre una página, hipervínculos
que nos permiten dirigirnos a otra página, listas, tablas para tabular
datos, etc.</b>
<p>Para poder crear una página HTML se requiere un simple editor
de texto (en nuestro caso emplearemos este
sitio) y un navegador de internet (IExplorer, FireFox etc.), emplearemos el
navegador
que en este preciso
momento está utilizando (recuerde que usted está viendo en este
preciso momento una página HTML con su
navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
propuestos y modifique los que se
presentan ya resueltos.<p>
<p>Este curso lo que busca es acercar el lenguaje HTML a una persona que
nunca antes trabajó con el mismo.
No pretende mostrar todas los elementos HTML en forma alfabética.</p>
<p>Como veremos, de cada concepto se presenta una parte teórica,
en la que se da una explicación completa,
luego se pasa a la sección del ejercicio resuelto donde podemos ver el
contenido de la página HTML y cómo
la visualiza el navegador. Por último y tal vez la sección más
importante de este tutorial es donde se
propone que usted haga páginas en forma autónoma (donde realmente
podrá darse cuenta si el concepto quedó
firme).</p>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(ocultarRecuadro);
x=$("#boton2");
x.click(mostrarRecuadro);
}
function ocultarRecuadro()
{
var x=$("#descripcion");
x.fadeOut("slow");
}
function mostrarRecuadro()
{
var x=$("#descripcion");
x.fadeIn("slow");
}
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
Problema:
Confeccionar una página que contenga un div con un conjunto de
párrafos. Cuando se presione con el mouse dentro del div ocultarlo
por decoloración y cuando esté completamente oculto hacer que
aparezca lentamente otro bloque.
Ver solución
pagina1.html
Hay que tener en cuenta que fadeTo por más que indiquemos el
valor 0 en opacidad el espacio que ocupa el elemento en la página
seguirá ocupado por un recuadro vacío.
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Reducir opacidad">
<input type="button" id="boton2" value="Aumentar opacidad">
<div id="descripcion" class="recuadro">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas
de internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega en la pantalla de acuerdo a su objetivo. Veremos que hay
elementos
para disponer imágenes sobre una página, hipervínculos que
nos permiten dirigirnos a otra página, listas, tablas para tabular datos,
etc.</b>
<p>Para poder crear una página HTML se requiere un simple editor
de texto (en nuestro caso emplearemos este sitio) y un navegador de internet
(IExplorer,
FireFox etc.), emplearemos el navegador que en este preciso momento está
utilizando (recuerde que usted está viendo en este preciso momento una
página HTML con su navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
propuestos y modifique los que se presentan ya resueltos.<p>
<p>Este curso lo que busca es acercar el lenguaje HTML a una persona que
nunca antes trabajó con el mismo. No pretende mostrar todas los elementos
HTML en forma alfabética.</p>
<p>Como veremos, de cada concepto se presenta una parte teórica,
en la que se da una explicación completa, luego se pasa a la sección
del ejercicio resuelto donde podemos ver el contenido de la página HTML
y cómo la visualiza el navegador. Por último y tal vez la sección
más importante de este tutorial es donde se propone que usted haga páginas
en forma autónoma (donde realmente podrá darse cuenta si el concepto
quedó firme).</p>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(reducirOpacidadRecuadro);
x=$("#boton2");
x.click(aumentarOpacidadRecuadro);
}
function reducirOpacidadRecuadro()
{
var x=$("#descripcion");
x.fadeTo("slow",0.5);
}
function aumentarOpacidadRecuadro()
{
var x=$("#descripcion");
x.fadeTo("slow",1);
}
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
Problema:
Ver solución
pagina1.html
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Mostrar/Ocultar">
<div id="descripcion" class="recuadro">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas
de internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega en la pantalla
de acuerdo a su objetivo. Veremos que hay elementos para disponer imágenes
sobre una página, hipervínculos
que nos permiten dirigirnos a otra página, listas, tablas para tabular
datos, etc.</b><p>Para poder crear una página HTML se requiere un simple
editor
de texto (en nuestro caso emplearemos
este sitio) y un navegador de internet (IExplorer, FireFox etc.), emplearemos
el navegador que en este preciso momento está utilizando
(recuerde que usted está viendo en este preciso momento una página HTML
con su navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
propuestos y modifique los que se presentan ya resueltos.<p>
<p>Este curso lo que busca es acercar el lenguaje HTML a una persona que
nunca antes trabajó con el mismo.
No pretende mostrar todas los elementos HTML en forma alfabética.</p>
<p>Como veremos, de cada concepto se presenta una parte teórica,
en la que se da una explicación completa,
luego se pasa a la sección del ejercicio resuelto donde podemos ver el
contenido de la página HTML y cómo la visualiza el navegador.
Por último y tal vez la sección más importante de este tutorial es donde se
propone que usted haga páginas en forma autónoma (donde realmente
podrá darse cuenta si el concepto quedó
firme).</p>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x=$("#boton1");
x.click(ocultarMostrarRecuadro);
}
function ocultarMostrarRecuadro()
{
var x=$("#descripcion");
x.toggle("slow");
}
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
La función ocultarMostrarRecuadro:
function ocultarMostrarRecuadro()
{
var x=$("#descripcion");
x.toggle("slow");
}
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<div id="parrafos">
<p>párrafo 1 - párrafo 1 - párrafo 1 - párrafo
1 - párrafo 1 - párrafo 1 - párrafo 1 - párrafo 1 -
párrafo 1 - párrafo 1 - párrafo 1 - párrafo 1 - párrafo
1 - párrafo 1 - párrafo 1 - párrafo 1 -
párrafo 1 - párrafo 1 - párrafo 1 - párrafo 1 - párrafo
1 - párrafo 1 - párrafo 1 - párrafo 1 -
párrafo 1 - párrafo 1 - párrafo 1 - párrafo 1 - párrafo
1 - párrafo 1 - párrafo 1 - párrafo 1</p>
<p>párrafo 2 - párrafo 2 - párrafo 2 - párrafo 2</p>
<p>párrafo 3 - párrafo 3 - párrafo 3 - párrafo
3 - párrafo 3 - párrafo 3 - párrafo 3 -
párrafo 3 - párrafo 3 - párrafo 3 - párrafo 3 - párrafo
3 - párrafo 3 - párrafo 3 -
párrafo 3 - párrafo 3 - párrafo 3 - párrafo 3 - párrafo
3 - párrafo 3 - párrafo 3 - párrafo 3 -
párrafo 3 - párrafo 3 - párrafo 3 - párrafo 3 - párrafo
3 - párrafo 3</p>
<p>párrafo 4 - párrafo 4 - párrafo 4 - párrafo
4 - párrafo 4</p>
</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#parrafos p");
x.each(resaltarParrafos);
}
function resaltarParrafos()
{
var x=$(this);
if (x.text().length<100)
{
x.css("background-color","#ff0");
}
}
Problema:
Una página tiene una lista de hipervínculos. Resaltar todos los
subdominios .ar
Utilizar el método indexOf de la clase String para verificar si una
cadena se encuentra en otra.
Ver solución
pagina1.html
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<h1>Signos del horóscopo.</h1>
<div id="menu">
<p><a id="enlace1" href="pagina1.php?cod=1">Aries</a></p>
<p><a id="enlace2" href="pagina1.php?cod=2">Tauro</a></p>
<p><a id="enlace3" href="pagina1.php?cod=3">Geminis</a></p>
<p><a id="enlace4" href="pagina1.php?cod=4">Cancer</a></p>
<p><a id="enlace5" href="pagina1.php?cod=5">Leo</a></p>
<p><a id="enlace6" href="pagina1.php?cod=6">Virgo</a></p>
<p><a id="enlace7" href="pagina1.php?cod=7">Libra</a></p>
<p><a id="enlace8" href="pagina1.php?cod=8">Escorpio</a></p>
<p><a id="enlace9" href="pagina1.php?cod=9">Sagitario</a></p>
<p><a id="enlace10" href="pagina1.php?cod=10">Capricornio</a></p>
<p><a id="enlace11" href="pagina1.php?cod=11">Acuario</a></p>
<p><a id="enlace12" href="pagina1.php?cod=12">Piscis</a></p>
</div>
<div id="detalles">Seleccione su signo.</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#menu a");
x.click(presionEnlace);
}
function presionEnlace()
{
var pagina=$(this).attr("href");
var x=$("#detalles");
x.load(pagina);
return false;
}
pagina1.php
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
if ($_REQUEST['cod']==1)
echo "<strong>Aries:</strong> Hoy los cambios serán físicos,
personales, de carácter, Te sentirás impulsivo y tomarás
iniciativas. Período en donde considerarás unirte a agrupaciones
de beneficencia, o de ayuda a los demás.";
if ($_REQUEST['cod']==2)
echo "<strong>Tauro:</strong> Hoy los cambios serán privados,
íntimos. Recuerdos. Ayuda, solidaridad. Asuntos en lugares de retiro. Tu
cónyuge puede aportar buen status a tu vida o apoyo a tu profesión.";
if ($_REQUEST['cod']==3)
echo "<strong>Géminis:</strong> Los asuntos de hoy tienen
que ver con las amistades, reuniones, actividades con ellos. Día
esperanzado,
ilusiones. Mucha energía sexual y fuerza emocional. Deseos difíciles
de controlar.";
if ($_REQUEST['cod']==4)
echo "<strong>Cancer:</strong> Este día la profesión
y las relaciones con superiores y con tu madre serán de importancia.
Actividad
en relación a estos temas. Momentos positivos con compañeros de
trabajo. Actividad laboral agradable.";
if ($_REQUEST['cod']==5)
echo "<strong>Leo:</strong> Este día los estudios, los
viajes, el extranjero y la espiritualidad serán lo importante. Pensamientos,
religión y filosofía también. Vivencias kármicas de
la época te vuelven responsable tomando decisiones.";
if ($_REQUEST['cod']==6)
echo "<strong>Virgo:</strong> Para este día toma importancia
tu vida sexual, tal vez miedos, temas legales, juicios o herencias.
Experiencias
extrañas. Hay karma de prueba durante este período en tu parte psicológica,
generándose algunos replanteos.";
if ($_REQUEST['cod']==7)
echo "<strong>Libra:</strong> Hoy todo asunto tiene que ver con
tu pareja, también con socios, con la gente o el público. Ellos
serán lo más importante del día. Ganancias a través
de especulaciones o del juego. Actividades vocacionales artísticas.";
if ($_REQUEST['cod']==8)
echo "<strong>Escorpio:</strong> Hoy todo asunto tiene que ver
con temas de trabajo y de salud. Presta atención a ambos. Experiencias
diversas con compañeros. Durante este período tendrás muchos
recursos para ganar dinero.";
if ($_REQUEST['cod']==9)
echo "<strong>Sagitario:</strong> Durante este día se
vivirán cambios en relación a los noviazgos o a los hijos. Creatividad,
actividad, diversiones y salidas. Período de encuentros con personas o
situaciones que te impresionan.";
if ($_REQUEST['cod']==10)
echo "<strong>Capricornio:</strong> Los cambios del día
tienen que ver con tu hogar, con la convivencia y con el padre. Asuntos
relativos
al carácter en la convivencia. El karma de responsabilidad de estos momentos
te acercará al mundo de lo desconocido, mucha madurez y contacto con el
más allá.";
if ($_REQUEST['cod']==11)
echo "<strong>Acuario:</strong> Hoy todo asunto tiene que ver
con el entorno inmediato, hermanos y vecinos, con la comunicación, los
viajes cortos o traslados frecuentes. El hablar y trasladarse será
importante
hoy. Mentalidad e ideas activas.";
if ($_REQUEST['cod']==12)
echo "<strong>Piscis:</strong> Durante este día se vivirán
cambios en la economía, movimientos en los ingresos, negocios, valores.
Momentos de gran fuerza y decisión profesionales, buscarás el liderazgo.";
?>
estilos.css
#menu {
font-family: Arial;
margin:5px;
}
#menu p {
margin:0px;
padding:0px;
}
#menu a {
display: block;
padding: 3px;
width: 160px;
background-color: #f7f8e8;
border-bottom: 1px solid #eee;
text-align:center;
}
#menu a:hover {
background-color: #369;
color: #fff;
}
#detalles {
background-color:#ffc;
text-align:left;
font-family:verdana;
border-width:0;
padding:5px;
border: 1px dotted #fa0;
margin:5px;
}
La función presionEnlace:
function presionEnlace()
{
var pagina=$(this).attr("href");
var x=$("#detalles");
x.load(pagina);
return false;
}
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<h1>Signos del horóscopo.</h1>
<div id="menu">
<p><a id="enlace1" href="pagina1.php?cod=1">Aries</a></p>
<p><a id="enlace2" href="pagina1.php?cod=2">Tauro</a></p>
<p><a id="enlace3" href="pagina1.php?cod=3">Geminis</a></p>
<p><a id="enlace4" href="pagina1.php?cod=4">Cancer</a></p>
<p><a id="enlace5" href="pagina1.php?cod=5">Leo</a></p>
<p><a id="enlace6" href="pagina1.php?cod=6">Virgo</a></p>
<p><a id="enlace7" href="pagina1.php?cod=7">Libra</a></p>
<p><a id="enlace8" href="pagina1.php?cod=8">Escorpio</a></p>
<p><a id="enlace9" href="pagina1.php?cod=9">Sagitario</a></p>
<p><a id="enlace10" href="pagina1.php?cod=10">Capricornio</a></p>
<p><a id="enlace11" href="pagina1.php?cod=11">Acuario</a></p>
<p><a id="enlace12" href="pagina1.php?cod=12">Piscis</a></p>
</div>
<div id="detalles">Seleccione su signo.</div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#menu a");
x.click(presionEnlace);
}
function presionEnlace()
{
var pagina=$(this).attr("href");
var x=$("#detalles");
x.ajaxStart(inicioEnvio);
x.load(pagina);
return false;
}
function inicioEnvio()
{
var x=$("#detalles");
x.html('<img src="../cargando.gif">');
}
pagina1.php
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
if ($_REQUEST['cod']==1)
echo "<strong>Aries:</strong> Hoy los cambios serán físicos,
personales, de carácter, Te sentirás impulsivo y tomarás
iniciativas. Período en donde considerarás unirte a agrupaciones
de beneficencia, o de ayuda a los demás.";
if ($_REQUEST['cod']==2)
echo "<strong>Tauro:</strong> Hoy los cambios serán privados,
íntimos. Recuerdos. Ayuda, solidaridad. Asuntos en lugares de retiro. Tu
cónyuge puede aportar buen status a tu vida o apoyo a tu profesión.";
if ($_REQUEST['cod']==3)
echo "<strong>Géminis:</strong> Los asuntos de hoy tienen
que ver con las amistades, reuniones, actividades con ellos. Día
esperanzado,
ilusiones. Mucha energía sexual y fuerza emocional. Deseos difíciles
de controlar.";
if ($_REQUEST['cod']==4)
echo "<strong>Cancer:</strong> Este día la profesión
y las relaciones con superiores y con tu madre serán de importancia.
Actividad
en relación a estos temas. Momentos positivos con compañeros de
trabajo. Actividad laboral agradable.";
if ($_REQUEST['cod']==5)
echo "<strong>Leo:</strong> Este día los estudios, los
viajes, el extranjero y la espiritualidad serán lo importante. Pensamientos,
religión y filosofía también. Vivencias kármicas de
la época te vuelven responsable tomando decisiones.";
if ($_REQUEST['cod']==6)
echo "<strong>Virgo:</strong> Para este día toma importancia
tu vida sexual, tal vez miedos, temas legales, juicios o herencias.
Experiencias
extrañas. Hay karma de prueba durante este período en tu parte psicológica,
generándose algunos replanteos.";
if ($_REQUEST['cod']==7)
echo "<strong>Libra:</strong> Hoy todo asunto tiene que ver con
tu pareja, también con socios, con la gente o el público. Ellos
serán lo más importante del día. Ganancias a través
de especulaciones o del juego. Actividades vocacionales artísticas.";
if ($_REQUEST['cod']==8)
echo "<strong>Escorpio:</strong> Hoy todo asunto tiene que ver
con temas de trabajo y de salud. Presta atención a ambos. Experiencias
diversas con compañeros. Durante este período tendrás muchos
recursos para ganar dinero.";
if ($_REQUEST['cod']==9)
echo "<strong>Sagitario:</strong> Durante este día se
vivirán cambios en relación a los noviazgos o a los hijos. Creatividad,
actividad, diversiones y salidas. Período de encuentros con personas o
situaciones que te impresionan.";
if ($_REQUEST['cod']==10)
echo "<strong>Capricornio:</strong> Los cambios del día
tienen que ver con tu hogar, con la convivencia y con el padre. Asuntos
relativos
al carácter en la convivencia. El karma de responsabilidad de estos momentos
te acercará al mundo de lo desconocido, mucha madurez y contacto con el
más allá.";
if ($_REQUEST['cod']==11)
echo "<strong>Acuario:</strong> Hoy todo asunto tiene que ver
con el entorno inmediato, hermanos y vecinos, con la comunicación, los
viajes cortos o traslados frecuentes. El hablar y trasladarse será
importante
hoy. Mentalidad e ideas activas.";
if ($_REQUEST['cod']==12)
echo "<strong>Piscis:</strong> Durante este día se vivirán
cambios en la economía, movimientos en los ingresos, negocios, valores.
Momentos de gran fuerza y decisión profesionales, buscarás el liderazgo.";
sleep(1);
?>
estilos.css
#menu {
font-family: Arial;
margin:5px;
}
#menu p {
margin:0px;
padding:0px;
}
#menu a {
display: block;
padding: 3px;
width: 160px;
background-color: #f7f8e8;
border-bottom: 1px solid #eee;
text-align:center;
}
#menu a:hover {
background-color: #369;
color: #fff;
}
#detalles {
background-color:#ffc;
text-align:left;
font-family:verdana;
border-width:0;
padding:5px;
border: 1px dotted #fa0;
margin:5px;
}
Problema:
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<form action="pagina1.php" method="post" id="formulario">
Ingrese nro:<input type="text" name="nro" id="nro"
size="10"><br>
<input type="submit" value="Calcular el cuadrado" id="enviar">
<div id="resultados"></div>
</form>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#enviar");
x.click(presionSubmit);
}
function presionSubmit()
{
var v=$("#nro").attr("value");
$.get("pagina1.php",{numero:v},llegadaDatos);
return false;
}
function llegadaDatos(datos)
{
alert(datos);
}
pagina1.php
<?php
$cuadrado=$_REQUEST['numero']*$_REQUEST['numero'];
echo $cuadrado;
?>
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
Ingrese dni (solo existen los valores 1,2 y 3):<input type="text"
name="dni" id="dni" size="10"><br>
<input type="button" value="Enviar" id="boton1">
<div id="resultados"></div>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#boton1");
x.click(presionSubmit);
}
function presionSubmit()
{
var v=$("#dni").attr("value");
$.getJSON("pagina1.php",{dni:v},llegadaDatos);
return false;
}
function llegadaDatos(datos)
{
$("#resultados").html("Nombre:"+datos.nombre+
"<br>"+"Apellido:"+
datos.apellido+"<br>"+
"Direccion:"+datos.direccion);
}
pagina1.php
<?php
header('Content-Type: text/txt; charset=ISO-8859-1');
$nombre='';
$apellido='';
$direccion='';
if ($_REQUEST['dni']=='1')
{
$nombre='Juan';
$apellido='Rodriguez';
$direccion='Colon 123';
}
if ($_REQUEST['dni']=='2')
{
$nombre='Ana';
$apellido='Maldonado';
$direccion='Lima 245';
}
if ($_REQUEST['dni']=='3')
{
$nombre='laura';
$apellido='Pueyrredon';
$direccion='Laprida 785';
}
echo "{
'nombre':'$nombre',
'apellido':'$apellido',
'direccion':'$direccion'
}";
?>
29 - $.ajax
Hasta ahora hemos visto que jQuery nos provee varias formas de
recuperar y enviar datos al servidor utilizando ajax:
1. Método load
2. Funciones $.get y $.post
3. $.getJSON
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<form action="pagina1.php" method="post" id="formulario">
Ingrese nro:<input type="text" name="nro" id="nro"
size="10"><br>
<input type="submit" value="Calcular el cuadrado" id="enviar">
<div id="resultados"></div>
</form>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(inicializarEventos);
function inicializarEventos()
{
var x;
x=$("#enviar");
x.click(presionSubmit);
}
function presionSubmit()
{
var v=$("#nro").attr("value");
$.ajax({
async:true,
type: "POST",
dataType: "html",
contentType: "application/x-www-form-urlencoded",
url:"pagina1.php",
data:"numero="+v,
beforeSend:inicioEnvio,
success:llegadaDatos,
timeout:4000,
error:problemas
});
return false;
}
function inicioEnvio()
{
var x=$("#resultados");
x.html('<img src="../cargando.gif">');
}
function llegadaDatos(datos)
{
$("#resultados").text(datos);
}
function problemas()
{
$("#resultados").text('Problemas en el servidor.');
}
pagina1.php
<?php
$cuadrado=$_REQUEST['numero']*$_REQUEST['numero'];
echo $cuadrado;
?>
pagina1.html
<html>
<head>
<title>Problema</title>
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<h1 id="titulo1">Primer título</h1>
<h1 id="titulo2">Segundo título</h1>
</body>
</html>
funciones.js
var x;
x=$(document);
x.ready(function(){
var x;
x=$("#titulo1");
x.click(function() {
var x;
x=$("#titulo1");
x.css("color","#ff0000");
x.css("background-color","#ffff00");
x.css("font-family","Courier");
});
x=$("#titulo2");
x.click(function () {
var x;
x=$("#titulo2");
x.css("color","#ffff00");
x.css("background-color","#ff0000");
x.css("font-family","Arial");
});
})
Problema:
Confeccionar una página que muestre una tabla con dos filas
cambiar el color de fondo cuando sea presionada con el mouse.
Ver solución
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<input type="button" id="boton1" value="Reducir opacidad
y ocultar">
<input type="button" id="boton2" value="Mostrar en
forma instantánea">
<div id="descripcion" class="recuadro">
<p>HTML es el lenguaje que se emplea para el desarrollo de páginas de
internet.</p>
<p>Este lenguaje está constituido de elementos que el navegador interpreta
y las despliega en la pantalla de acuerdo a su objetivo. Veremos que hay
elementos
para disponer imágenes sobre una página, hipervínculos que
nos permiten dirigirnos a otra página, listas, tablas para tabular datos,
etc.</b><p>Para poder crear una página HTML se requiere un simple editor
de texto (en nuestro caso emplearemos este sitio) y un navegador de internet
(IExplorer,
FireFox etc.), emplearemos el navegador que en este preciso momento está
utilizando (recuerde que usted está viendo en este preciso momento una
página HTML con su navegador).</p>
<p>Lo más importante es que en cada concepto desarrolle los ejercicios
propuestos y modifique los que se presentan ya resueltos.<p>
<p>Este curso lo que busca es acercar el lenguaje HTML a una persona que
nunca antes trabajó con el mismo. No pretende mostrar todas los elementos
HTML en forma alfabética.</p>
<p>Como veremos, de cada concepto se presenta una parte teórica,
en la que se da una explicación completa, luego se pasa a la sección
del ejercicio resuelto donde podemos ver el contenido de la página HTML
y cómo la visualiza el navegador. Por último y tal vez la sección
más importante de este tutorial es donde se propone que usted haga páginas
en forma autónoma (donde realmente podrá darse cuenta si el concepto
quedó firme).</p>
</div>
</body>
</html>
funciones.js
$(document).ready(function () {
$("#boton1").click(function () {
$("#descripcion").fadeTo("slow",0.5).hide("slow");
});
$("#boton2").click(function () {
$("#descripcion").show().fadeTo("slow",1);
})
})
estilos.css
.recuadro {
background-color:#ffffcc;
font-family:verdana;
font-size:14px;
border-top-width:1px;
border-right-width:3px;
border-bottom-width:3px;
border-left-width:1px;
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:solid;
border-left-style:dotted;
border-top-color:#ffaa00;
border-right-color:#ff0000;
border-bottom-color:#ff0000;
border-left-color:#ffaa00;
}
Como podemos observar en la siguiente línea tenemos llamadas
encadenadas:
$("#descripcion").fadeTo("slow",0.5).hide("slow");
estilos.css
function inicializarEventos()
{
var x=$("#boton1");
x.click(ocultarRecuadro);
x=$("#boton2");
x.click(mostrarRecuadro);
}
function ocultarRecuadro()
{
var x=$("#descripcion");
x.fadeTo("slow",0.5);
x.hide("slow");
}
function mostrarRecuadro()
{
var x=$("#descripcion");
x.show();
x.fadeTo("slow",1);
}
Problema:
pagina1.html
<html>
<head>
<title>Problema</title>
<link rel="StyleSheet" href="estilos.css" type="text/css">
<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="funciones.js"></script>
</head>
<body>
<p>Entre con el mouse al recuadro.</p>
<div class="cuadradito" id="c1"></div>
<div class="cuadradito" id="c2"></div>
<div class="cuadradito" id="c3"></div>
<div class="cuadradito" id="c4"></div>
</body>
</html>
estilos.css
.cuadradito{
background-color: #f00;
height: 50px;
width: 50px;
margin:3px;
z-index: -1;
}
#divmensaje {
background-color: yellow;
position: absolute;
padding: 5px;
width:250px;
left:120px;
top:100px;
z-index: 100;
}
funciones.js
$(document).ready(function () {
$("body").append('<div id="divmensaje">hhhh</div>');
$("#divmensaje").hide();
$(".cuadradito").hover(function (e) {
$("#divmensaje").show();
$("#divmensaje").css("left",e.clientX+document.body.scrollLeft+5);
$("#divmensaje").css("top",e.clientY+document.body.scrollTop+5);
$("#divmensaje").load("pagina1.php?cod="+$(this).attr('id'));
},
function () {
$("#divmensaje").hide();
})
$(".cuadradito").mousemove(function (e){
$("#divmensaje").css("left",e.clientX+document.body.scrollLeft+5);
$("#divmensaje").css("top",e.clientY+document.body.scrollTop+5);
})
})
pagina1.php
<?php
if ($_REQUEST['cod']=='c1')
{
echo "<img src=\"../imagen1.jpg\">";
echo "<p>Primer tooltip.</p>";
echo "<p>aaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaa aaaaaa aaaaaaaaaa";
echo "aaaaaaaaaaaaaaaaaaa aaaaaaaaa aaaaaaaaaaaaa aaaaaaaaaaaaaaaa";
echo "aaaaaaaaaaaaaaaaaaa aaaaaaaa aaaaaaaaaaaaaa aaaaaaaaa aaaaaaa";
echo "aaaaaaaaaaaaaa aaaaa aaaaaaaaaaaaaaaaaaaaaa aaaaaa aaaaaaaaaa";
echo "aaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaa aaaaaaa aaaaaaaaaaaaaaaa</p>";
}
if ($_REQUEST['cod']=='c2')
{
echo "<img src=\"../imagen2.jpg\">";
echo "<p>Segundo tooltip.</p>";
echo "<p>bbbbbbbb bbbbbbbbbbb bbbbbbbb bbbbbbbbbbbbbb bbbbbbbbbbb bb";
echo "bbbbbbbb bbbbbbbbbb bbbbbbbbbbbb bbbbbbbbbb bbbbbbbbbbb bbb</p>";
}
if ($_REQUEST['cod']=='c3')
{
echo "<img src=\"../imagen3.jpg\">";
echo "<p>Tercer tooltip.</p>";
}
if ($_REQUEST['cod']=='c4')
{
echo "<img src=\"../imagen4.jpg\">";
echo "<p>Cuarto tooltip.</p>";
}
?>
Como podemos ver el código JavaScript utilizando la librería jQuery
queda muy compacto y reducido:
$(document).ready(function () {
$("body").append('<div id="divmensaje">hhhh</div>');
$("#divmensaje").hide();
$(".cuadradito").hover(function (e) {
$("#divmensaje").show();
$("#divmensaje").css("left",e.clientX+document.body.scrollLeft+5);
$("#divmensaje").css("top",e.clientY+document.body.scrollTop+5);
$("#divmensaje").load("pagina1.php?cod="+$(this).attr('id'));
},
function () {
$("#divmensaje").hide();
})
$(".cuadradito").mousemove(function (e){
$("#divmensaje").css("left",e.clientX+document.body.scrollLeft+5);
$("#divmensaje").css("top",e.clientY+document.body.scrollTop+5);
})
})