<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>mjcarrascosa.com &#187; jQuery</title>
	<atom:link href="http://mjcarrascosa.com/tag/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://mjcarrascosa.com</link>
	<description>Desarrollo web y otras hierbas</description>
	<lastBuildDate>Fri, 08 Jul 2011 07:41:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Hacer visible un campo password con jQuery</title>
		<link>http://mjcarrascosa.com/hacer-visible-un-campo-password-con-jquery/</link>
		<comments>http://mjcarrascosa.com/hacer-visible-un-campo-password-con-jquery/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 00:20:06 +0000</pubDate>
		<dc:creator>Manuel Jesús Carrascosa de la Blanca</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Librerías]]></category>
		<category><![CDATA[formularios]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[librería]]></category>
		<category><![CDATA[usabilidad]]></category>

		<guid isPermaLink="false">http://mjcarrascosa.com/?p=597</guid>
		<description><![CDATA[Los campos de tipo password no muestran el contenido que tecleamos, evidentemente para evitar que alguien pueda ver nuestras contraseñas. Pero en ocasiones, por ejemplo cuando estamos en casa y no hay nadie cerca, nos puede interesar mostrar el contenido de estos. Usando la librería jQuery podemos hacer esto de forma muy sencilla. Vamos a [...]]]></description>
			<content:encoded><![CDATA[<p>Los campos de tipo password no muestran el contenido que tecleamos, evidentemente para evitar que alguien pueda ver nuestras contraseñas. Pero en ocasiones, por ejemplo cuando estamos en casa y no hay nadie cerca, nos puede interesar mostrar el contenido de estos. Usando la librería jQuery podemos hacer esto de forma muy sencilla.</p>
<p>Vamos a ver primero el código de nuestro formulario:</p>
<pre class="brush:html">&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt;
&lt;html&gt;
   &lt;head&gt;
      &lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&gt;
      &lt;title&gt;Login&lt;/title&gt;
      &lt;script type="text/javascript" src="jquery-1.4.2.min.js"&gt;&lt;/script&gt;
      &lt;script type="text/javascript" src="login.js"&gt;&lt;/script&gt;
   &lt;/head&gt;
   &lt;body&gt;
      &lt;form onsubmit="return false;"&gt;
         &lt;label for="user"&gt;Usuario:&lt;/label&gt;&lt;input type="text" name="user" id="user"/&gt;&lt;br/&gt;
         &lt;label for="password"&gt;Password:&lt;/label&gt;&lt;input type="password" name="password" id="password"/&gt;&lt;br/&gt;
         &lt;input type="checkbox" id="show"/&gt; &lt;label for="show"&gt;Mostrar password.&lt;/label&gt;&lt;br/&gt;
         &lt;input type="submit" value="login"/&gt;
      &lt;/form&gt;
   &lt;/body&gt;
&lt;/html&gt;</pre>
<p>Es un formulario muy sencillo, ni siquiera envia datos, pero nos sirve como ejemplo. Podemos ver que añadimos dos scripts a la página, el de jQuery y el que contendrá el código para mostrar el campo password. También observamos que hay un campo checkbox que tendremos que seleccionar para ver el contenido de campo password.</p>
<p>Ahora vamos con el código para mostrar el valor del campo, que está en el archivo login.js:</p>
<pre class="brush:javascript">$(document).ready( function(){

   $('#show').attr('checked', false);

   $('#show').click(function(){

      name = $('#password').attr('name');
      value = $('#password').attr('value');
      if($(this).attr('checked'))
      {
         html = '&lt;input type="text" name="'+ name + '" value="' + value + '" id="password"/&gt;';
         $('#password').after(html).remove();
      }
      else
      {
         html = '&lt;input type="password" name="'+ name + '" value="' + value + '" id="password"/&gt;';
         $('#password').after(html).remove();
      }
   });
});</pre>
<p>Básicamente lo que hacemos es añadir un evento click al campo checkbox. Cuando se hace click sobre el checkbox este comprueba su valor y sustituye el campo, por otro igual del tipo que corresponda, password cuando no está seleccionando y text cuando lo está, dándole el mismo valor a los atributos de este.</p>
<p>Podéis ver una demo en el siguiente enlace:</p>
<p><a title="Demostración de como hacer visible un campo password con jQuery" href="http://mjcarrascosa.com/demos/campo-password/login.html">Demostración de como hacer visible un campo password con jQuery</a></p>
<p>Y también podéis descargar los archivos de la demo:</p>
<p><a href="http://mjcarrascosa.com/wp-content/uploads/2010/04/login.zip">Archivos para hacer visibe un campo password con jQuery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mjcarrascosa.com/hacer-visible-un-campo-password-con-jquery/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Los efectos especiales de jQuery</title>
		<link>http://mjcarrascosa.com/los-efectos-especiales-de-jquery/</link>
		<comments>http://mjcarrascosa.com/los-efectos-especiales-de-jquery/#comments</comments>
		<pubDate>Sat, 18 Jul 2009 23:36:06 +0000</pubDate>
		<dc:creator>Manuel Jesús Carrascosa de la Blanca</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Librerías]]></category>
		<category><![CDATA[efectos]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[librería]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://mjcarrascosa.com/?p=284</guid>
		<description><![CDATA[Ya he hablado anteriormente del framework jQuery. Hoy vamos a comentar los efectos especiales que implementa el framework. Efectos básicos: Efecto Descripción Show() Muestra los elementos seleccionados. Show(speed, callback) Muestra los elementos seleccionados a la velocidad indicada y al final lanza un callback si se ha indicado. hide() Oculta los elementos seleccionados. hide(speed, callback) Oculta [...]]]></description>
			<content:encoded><![CDATA[<p>Ya he hablado anteriormente del framework jQuery. Hoy vamos a comentar los efectos especiales que implementa el framework.</p>
<h2>Efectos básicos:</h2>
<table border="0">
<tbody>
<tr>
<th valign="top">Efecto</th>
<th valign="top">Descripción</th>
</tr>
<tr>
<td valign="top">Show()</td>
<td valign="top">Muestra los elementos seleccionados.</td>
</tr>
<tr>
<td valign="top">Show(speed, <em>callback</em>)</td>
<td valign="top">Muestra los elementos seleccionados a la velocidad indicada y al final lanza un callback si se ha indicado.</td>
</tr>
<tr>
<td valign="top">hide()</td>
<td valign="top">Oculta los elementos seleccionados.</td>
</tr>
<tr>
<td valign="top">hide(speed, <em>callback</em>)</td>
<td valign="top">Oculta los elementos seleccionados a la velocidad indicada y al final lanza un callback si se ha indicado.</td>
</tr>
<tr>
<td valign="top">toggle()</td>
<td valign="top">Conmuta la visibilidad de los elementos seleccionados.</td>
</tr>
<tr>
<td valign="top">toggle(switch)</td>
<td valign="top">Conmuta la visibilidad de los elementos seleccionados en función del valor del parámetro switch. Si es <em>true</em> lo muestra, si es <em>false</em> lo oculta.</td>
</tr>
<tr>
<td valign="top">toggle(speed, <em>callback</em>)</td>
<td valign="top">Conmuta la visibilidad de los elementos seleccionados a una velocidad dada y lanza un callback si se ha indicado.</td>
</tr>
</tbody>
</table>
<h2>Efectos móviles:</h2>
<table border="0">
<tbody>
<tr>
<th valign="top">Efecto</th>
<th valign="top">Descripción</th>
</tr>
<tr>
<td valign="top">slideDown(speed, <em>callback</em>)</td>
<td valign="top">Despliega los elementos seleccionados a una velocidad dada y lanza un callback si se ha indicado.</td>
</tr>
<tr>
<td valign="top">slideUp(speed, <em>callback</em>)</td>
<td valign="top">Encoge los elementos seleccionados a una velocidad dada y lanza un callback si se ha indicada.</td>
</tr>
<tr>
<td valign="top">slideToggle(speed, <em>callback</em>)</td>
<td valign="top">Muestra u oculta el elemento mediante despliegue dependiendo de como estuviera. Al final lanza un callback si se ha indicado.</td>
</tr>
</tbody>
</table>
<h2>Efectos de fundido:</h2>
<table border="0">
<tbody>
<tr>
<th valign="top">Efecto</th>
<th valign="top">Descripción</th>
</tr>
<tr>
<td valign="top">fadeIn(speed, <em>callback</em>)</td>
<td valign="top">Muestra mediante un fundido los elementos seleccionados. Al final lanza un callback si se ha indicado.</td>
</tr>
<tr>
<td valign="top">fadeOut(speed, <em>callback</em>)</td>
<td valign="top">Oculta mediante un fundido los elementos seleccionados. Al final lanza un callback si se ha indicado.</td>
</tr>
<tr>
<td valign="top">fadeTo(speed, opacity, <em>callback</em>)</td>
<td valign="top">Realiza un fundido de los elementos seleccionados hasta la opacidad indicada. La opacidad es un número entre 0 (transparente) y 1 (opaco). Al final lanza un callback si se ha indicado.</td>
</tr>
</tbody>
</table>
<p>En todos los métodos en los que se puede indicar la velocidad esta tomara los valores &#8216;slow&#8217;, &#8216;normal&#8217;, &#8216;fast&#8217; o el número de milisegundos que durará la animación.</p>
<p>Después de esto vamos a ver un pequeño ejemplo:</p>
<pre class="brush:html">&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"&gt;
&lt;title&gt;Efectos especiales con jQuery&lt;/title&gt;
&lt;script src="jquery.js" type="text/javascript"&gt;&lt;/script&gt;
&lt;style&gt;
 .cuadro {
 	background-color:#4682b4;
 	color: #fff;
 	padding: 5px;
 	width: 400px;
 	border-width: 2px;
 	border-color: #000;
 	border-style: solid;
 }
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;Efectos especiales con jQuery&lt;/h1&gt;
&lt;a href="#" onclick="$('#c1').show();"&gt;[show]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').hide();"&gt;[hide]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').toggle();"&gt;[toggle]&lt;/a&gt;&lt;br/&gt;
&lt;a href="#" onclick="$('#c1').slideDown('slow');"&gt;[slideDown]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').slideUp('slow');"&gt;[slideUp]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').slideToggle('slow');"&gt;[slideToggle]&lt;/a&gt;&lt;br/&gt;
&lt;a href="#" onclick="$('#c1').fadeIn('slow');"&gt;[fadeIn]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').fadeOut('slow');"&gt;[fadeOut]&lt;/a&gt;&lt;br/&gt;
&lt;a href="#" onclick="$('#c1').fadeTo('slow', 0);"&gt;[fadeTo 0%]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').fadeTo('slow', 0.25);"&gt;[fadeTo 25%]&lt;/a&gt;
&lt;a href="#" onclick="$('#c1').fadeTo('slow', 0.5);"&gt;[fadeTo 50%]&lt;/a&gt; &lt;a href="#" onclick="$('#c1').fadeTo('slow', 0.75);"&gt;[fadeTo 75%]&lt;/a&gt;
&lt;a href="#" onclick="$('#c1').fadeTo('slow', 1);"&gt;[fadeTo 100%]&lt;/a&gt;&lt;br/&gt;
&lt;div id="c1" class="cuadro"&gt;
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque at mauris risus.
Duis ornare euismod fringilla. Etiam nec ante sem, a cursus massa. Duis rutrum
metus blandit tellus rhoncus quis sodales lacus porttitor. Quisque posuere,
metus eu imperdiet egestas, diam justo ornare est, quis lacinia enim eros id massa.
Curabitur volutpat porta iaculis. Proin vitae elit sodales leo lacinia tincidunt.
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Podéis ver este ejemplo en acción <a title="Ejemplo de efectos con jQuery" href="http://mjcarrascosa.com/demos/jquery/efectos/efectos.html">aquí</a>. También podéis descargar el código con los ejemplos, algo recomendado para poder tocar si queréis:</p>
<p><a href="http://mjcarrascosa.com/wp-content/uploads/2009/07/efectos_jquery.zip">Ejemplo de efectos con jQuery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mjcarrascosa.com/los-efectos-especiales-de-jquery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Breve tutorial de AJAX con jQuery</title>
		<link>http://mjcarrascosa.com/breve-tutorial-de-ajax-con-jquery/</link>
		<comments>http://mjcarrascosa.com/breve-tutorial-de-ajax-con-jquery/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 20:56:07 +0000</pubDate>
		<dc:creator>Manuel Jesús Carrascosa de la Blanca</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Librerías]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://mjcarrascosa.com/?p=121</guid>
		<description><![CDATA[Hace unos días se explicaba como utilizar AJAX con Prototype. Hoy le toca el turno a jQuery. Vamos a verlo con un pequeño ejemplo idéntico al que hicimos para Prototype. ejemploAJAXconjQuery.html: &#60;html&#62; &#60;head&#62; &#60;title&#62;Ejemplo de AJAX con jQuery&#60;/title&#62; &#60;script src="./jquery.js" type="text/javascript"&#62;&#60;/script&#62; &#60;script src="./ejemploAJAXconjQuery.js" type="text/javascript"&#62;&#60;/script&#62; &#60;/head&#62; &#60;body&#62; &#60;div&#62; &#60;ul&#62; &#60;li&#62;&#60;a href="javascript:ejemploAJAX(1);"&#62;Obtener texto 1.&#60;/a&#62;&#60;/li&#62; &#60;li&#62;&#60;a href="javascript:ejemploAJAX(2);"&#62;Obtener texto [...]]]></description>
			<content:encoded><![CDATA[<p>Hace unos días se explicaba <a title="Breve tutorial de AJAX con Prototype" href="http://mjcarrascosa.com/breve-tutorial-de-ajax-con-prototype/">como utilizar AJAX con Prototype</a>. Hoy le toca el turno a <a title="página de jQuery" href="http://jquery.com/">jQuery</a>. Vamos a verlo con un pequeño ejemplo idéntico al que hicimos para Prototype.</p>
<p><strong>ejemploAJAXconjQuery.html:</strong></p>
<pre class="brush:html">&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Ejemplo de AJAX con jQuery&lt;/title&gt;
&lt;script src="./jquery.js" type="text/javascript"&gt;&lt;/script&gt;
&lt;script src="./ejemploAJAXconjQuery.js" type="text/javascript"&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div&gt;
  &lt;ul&gt;
    &lt;li&gt;&lt;a href="javascript:ejemploAJAX(1);"&gt;Obtener texto 1.&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="javascript:ejemploAJAX(2);"&gt;Obtener texto 2.&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="javascript:ejemploAJAX(3);"&gt;Obtener texto 3.&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
&lt;div id="resultado"&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Con estro creamos una lista con tres enlaces. Al hacer click sobre cada uno de ellos se llama a la función <em>ejemploAJAX</em> y le pasamos un valor numérico. En la cuarta linea podemos observar como se añade el archivo <em>jquery.js</em>. Este es el archivo que contiene la librería.</p>
<p>Veamos ahora nuestra función ejemploAJAX:</p>
<p><strong>ejemploAJAXconjQuery.js:</strong></p>
<pre class="brush:javascript">function ejemploAJAX(textID)
{
	var params = "textid=" + textID;
	$.ajax({
		type: "get",
		url: "ejemploAJAXconjQuery.php",
		data: params,
		success: function(respuesta) {
			$('#resultado').html(respuesta);
		}
	}
	);
}
</pre>
<p>Como se puede apreciar se crea una variable llamada params con los parámetros que tendrá la llamada al script que nos devolverá el resultado. Con $.ajax accedemos a la función encargada de realizar el manejo AJAX. A esta función se le pasan varios parámetros para controlar a donde debemos ir a por la información y como realizar la petición. En este caso le pasamos cuatro parámetros, que son el tipo (type), en este caso le indicamos que use el método get, la url del script, los parámetros y la función que se ejecutará cuando la petición se haya realizado correctamente. Como se puede apreciar los parámetros van encerrados entre los corchetes { y } y en el formato parámetro : valor, y separadas por comas.</p>
<p>La función que se ejecuta cuando se realiza correctamente la petición se define, en este caso, en el propio valor del parámetro success. Esta función recibe un parámetro (html) que es la respuesta de nuestro script. En el cuerpo de la función lo único que hacemos es seleccionar el elemento cuyo id es resultado. Para eso usamos la función $ y le pasamos &#8216;#resultado&#8217; para acceder al elemento. Llamamos al método html pasándole el parámetro respuesta para hacer que el contenido de ese elemento sea la respuesta de nuestro script.</p>
<p>Vamos a ver ahora el script que nos da la respuesta. Un script muy sencillo, pero útil para un ejemplo.</p>
<p><strong>ejemploAJAXconjQuery.php:</strong></p>
<pre class="brush:php">&lt;?php

switch($_GET['textid'])
{
	case 1:
		echo "Texto de ejmplo uno.";
		break;
	case 2:
		echo "Texto de ejmplo dos.";
		break;
	case 3:
		echo "Texto de ejmplo tres.";
		break;
}
?&gt;</pre>
<p>Simplemente en función de la variable <em>textid</em>, el parámetro que le pasamos, nos devuelve un texto u otro. Como se puede ver es idéntico al script del tutorial de Prototype.</p>
<p>En este caso, al ser un ejemplo, el texto devuelto es muy simple, pero podríamos haber devuelto la información en formato <a title="XML" href="http://es.wikipedia.org/wiki/XML"><em>XML</em></a> o <a title="JSON" href="http://es.wikipedia.org/wiki/JSON"><em>JSON</em></a> para luego procesarlo mediante JavaScript en nuestra página.</p>
<p>Con esto termina este tutorial sobre AJAX y jQuery. Es recomendable tener siempre a mano la <a title="Documentación de jQuery" href="http://docs.jquery.com/">documentación de jQuery</a>, donde se pueden var algunos ejemplos y donde vienen explicados todas las funciones, métodos, etc, de la librería.</p>
<p>Y como siempre los ficheros con el ejemplo:</p>
<p><a href="http://mjcarrascosa.com/wp-content/uploads/2009/06/ejemploajaxconjquery.zip">Ejemplo de AJAX con jQuery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mjcarrascosa.com/breve-tutorial-de-ajax-con-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

