<?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>Boteco Digital &#187; JQuery</title>
	<atom:link href="http://www.botecodigital.info/category/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.botecodigital.info</link>
	<description></description>
	<lastBuildDate>Thu, 26 Jan 2012 18:36:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Validando formulários com JQuery-Plugin-Validation</title>
		<link>http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/</link>
		<comments>http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/#comments</comments>
		<pubDate>Sat, 30 Apr 2011 15:50:58 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[plugin JQuery]]></category>
		<category><![CDATA[validação]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.botecodigital.info/?p=1485</guid>
		<description><![CDATA[Apesar de ser fundamental validar as informações enviadas por um formulário no lado do servidor, também é importante validar as informações no lado do cliente evitando assim que o usuário tenha que enviar o formulário, que leva algum tempo, para saber que esqueceu de preencher um campo obrigatório. Existe um plugin para JQuery que nos facilita muito a vida, o jquery-plugin-validation que nos permite uma boa customização nas validações. Vamos aos exemplos. O modo mais fácil de validar é adicionar [...]]]></description>
			<content:encoded><![CDATA[<p>Apesar de ser fundamental validar as informações enviadas por um formulário no lado do servidor, também é importante validar as informações no lado do cliente evitando assim que o usuário tenha que enviar o formulário, que leva algum tempo, para saber que esqueceu de preencher um campo obrigatório.</p>
<p>Existe um plugin para <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/">JQuery</a> que nos facilita muito a vida, o <a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/">jquery-plugin-validation</a> que nos permite uma boa customização nas validações. Vamos aos exemplos.</p>
<p>O modo mais fácil de validar é adicionar um classe ao input que deve ser validado.</p>
<p>Primeiramente baixe o plugin <a href="http://jquery.bassistance.de/validate/jquery-validation-1.8.0.zip">jquery-plugin-validation</a> e adicione na página o arquivo da biblioteca JQuery e o arquivo plugin <strong>&#8220;jquery.validate.js&#8221;</strong>. Após isso podemos começar com nosso formulário. </p>
<pre class="brush: xml; title: ; notranslate">
&lt;form method=&quot;post&quot; action=&quot;mostrar.php&quot; id=&quot;form1&quot;&gt;
	&lt;div&gt;
		&lt;label for=&quot;nome&quot;&gt;Nome:&lt;/label&gt;
		&lt;input type=&quot;text&quot; name=&quot;nome&quot; id=&quot;nome&quot; class=&quot;required&quot; /&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;label for=&quot;sobrenome&quot;&gt;Sobrenome:&lt;/label&gt;
		&lt;input type=&quot;text&quot; name=&quot;sobrenome&quot; id=&quot;sobrenome&quot; class=&quot;required&quot; /&gt;
	&lt;/div&gt;
	&lt;div class=&quot;submit&quot;&gt;
		&lt;input type=&quot;submit&quot; /&gt;
	&lt;/div&gt;
&lt;/form&gt;
</pre>
<p>Repare que foi adicionada a classe <em>required</em> nos inputs que devem ser preenchido, o plugin nos formece alguma as seguinte validações:</p>
<h3>Classes</h3>
<p><strong>required:</strong> Não pode ser deixado em branco.</p>
<p><strong>email:</strong> Valida E-mail.</p>
<p><strong>url:</strong> Valida um endereço de um site.</p>
<p><strong>date:</strong> Valida uma data.</p>
<p><strong>number:</strong> Valida que o valor informado seja numérico.</p>
<h3>Também podemos utilizar os atributos:</h3>
<p><strong>minlength:</strong> Número minimo de caracteres.</p>
<p><strong>maxlength:</strong> Número máximo de caracteres.</p>
<p>O Javascript para valida o formulário é o seguinte:</p>
<pre class="brush: jscript; title: ; notranslate">
$(document).ready(function(){
	$(&quot;#form1&quot;).validate();
});
</pre>
<p><a href="http://www.botecodigital.info/exemplos/jquery-validation/form1.html" target="_blank">Veja o exemplo</a></p>
<p>Como você irá notar caso um campo não seja válido o plugin irá criar um novo elemento <em>label</em> após o campo do formulário, com a classe <em>error</em> que pode ser estilizado como queira, ma existe um pequeno problema, a mensagem gerada é em inglês e em algumas situações queremos customizar essa mensagem. Veja o exemplo:</p>
<pre class="brush: jscript; title: ; notranslate">
 $(&quot;#form1&quot;).validate({
		rules:{
			nome:{
				required:true,
				minlength:5
			},
			sobrenome:{
				required:true,
				minlength:5
			}
		},
		messages:{
			nome:{
				required:&quot;Você deve preencher o nome&quot;,
				minlength:&quot;O nome deve ter mais que 5 caracteres&quot;
			},
			sobrenome:{
				required:&quot;Você deve preencher o sobrenome&quot;,
				minlength:&quot;O sobfenome deve ter mais que 5 caracteres&quot;
			}
		}
 });
</pre>
<p><a href="http://www.botecodigital.info/exemplos/jquery-validation/form2.html" target="_blank">Veja o exemplo</a></p>
<p>Bom esse é o básico, até mais e obrigado pelos peixes!</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Trocando dados utilizando JSON" title="Trocando dados utilizando JSON" /></a> <a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark" class="crp_title">Trocando dados utilizando JSON</a></li><li><a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" title="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" /></a> <a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark" class="crp_title">Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery</a></li><li><a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Menu Sanfona com JQuery" title="Menu Sanfona com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark" class="crp_title">Menu Sanfona com JQuery</a></li><li><a href="http://www.botecodigital.info/php/cakephp-%e2%80%93-validando-um-formlario-com-model-sem-controller/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/08/cakephp.png" class="crp_thumb wp-post-image" alt="CakePHP – Validando um formlário com Model sem Controller" title="CakePHP – Validando um formlário com Model sem Controller" /></a> <a href="http://www.botecodigital.info/php/cakephp-%e2%80%93-validando-um-formlario-com-model-sem-controller/" rel="bookmark" class="crp_title">CakePHP – Validando um formlário com Model sem Controller</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Trocando dados utilizando JSON</title>
		<link>http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/</link>
		<comments>http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/#comments</comments>
		<pubDate>Thu, 13 May 2010 19:26:30 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>

		<guid isPermaLink="false">http://www.botecodigital.info/?p=1015</guid>
		<description><![CDATA[JSON é um formato leve de troca de informações que em muitos casos está sendo utilizado para substituir o XML ou mesmo utilizado em conjundo. É um formato de dados fácil de escrever e ler por seres humanos e é bastante fácil de ser interpretado por computadores, sendo possível converte-lo facilmente para a notação de objetos JavaScript, o que o torna um boa opção para AJAX, principalmente quando necessitamos processar de alguma forma os dados buscados via AJAX. Vejamos um [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.json.org/json-pt.html" target="_blank"><acronym title="JavaScript Object Notation">JSON</acronym></a> é um formato leve de troca de informações que  em muitos casos está sendo utilizado para substituir o XML ou mesmo utilizado em conjundo.</p>
<p>É um formato de dados fácil de escrever e ler por seres humanos e é bastante fácil de ser interpretado por computadores, sendo possível converte-lo facilmente para a notação de objetos JavaScript, o que o torna um boa opção para AJAX, principalmente quando necessitamos processar de alguma forma os dados buscados via AJAX.</p>
<p>Vejamos um exemplo do formato JSON:</p>
<pre class="brush: jscript; title: ; notranslate">
{
&quot;nome&quot;: &quot;Rodrigo&quot;,
&quot;sobrenome&quot;: &quot;Aramburu&quot;,
&quot;idade&quot;:&quot;25&quot;,
&quot;site&quot;:&quot;http://www.botecodigital.info&quot;
}
</pre>
<p>O formato é bem simples, um objeto é formado de vários membros dentro de chaves. Um membro é formado de uma string que será o nome da variável e um valor que pode ser: string, numérico, lógico, um array ou um outro objeto.</p>
<p>Vejamos um exemplo um pouco mais complexo:</p>
<pre class="brush: jscript; title: ; notranslate">
{
    &quot;nome&quot;:&quot;Loja Exemplo&quot;,
    &quot;produtos&quot;:[
                {&quot;nome&quot;:&quot;Monitor LCD&quot;,&quot;preco&quot;:350},
                {&quot;nome&quot;:&quot;Gravador de DVD&quot;,&quot;preco&quot;:120},
                {&quot;nome&quot;:&quot;Pendrive&quot;,&quot;preco&quot;:60},
               ]
}
</pre>
<p>Neste objeto temos 2 membros: <strong>nome</strong> que é tem um valor string e  <strong>produtos</strong> que é um array de outros objetos  que possuem dois membros: nome e preco.</p>
<p>Podemos  interpretar o formato JSON utilizando uma função da biblioteca <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" target="_blank">JQuery</a> &#8211;  <em>jQuery.parseJSON</em>  &#8211; ela recebe o documento JSON como parâmetro e devolve um objeto JavaScript com os valores.</p>
<p>Exemplo:</p>
<pre class="brush: jscript; title: ; notranslate">
var dados = '{&quot;nome&quot;: &quot;Rodrigo&quot;,&quot;sobrenome&quot;: &quot;Aramburu&quot;,&quot;idade&quot;:&quot;25&quot;,&quot;site&quot;:&quot;http://www.botecodigital.info&quot;}';
var obj = jQuery.parseJSON(dados);

alert(obj.nome);
alert(obj.sobrenome);
alert(obj.idade);
alert(obj.site);
</pre>
<p>Bastante simples! Deve ser mostrado em janela de <em>alert</em> as palavras &#8220;Rodrigo&#8221;, &#8220;Aramburu&#8221;, &#8220;25&#8243; e &#8220;http://www.botecodigital.info&#8221;. Como podemos notar isto torna muito fácil manipular uma série de valores contidos dentro de uma string ou arquivo arquivo.</p>
<p>Mais um exemplo para reforçar:</p>
<pre class="brush: jscript; title: ; notranslate">
var dados  = '{ ';
    dados += '&quot;nome&quot;:&quot;Loja Exemplo&quot;,';
    dados += ' &quot;produtos&quot;:[';
    dados += '       {&quot;nome&quot;:&quot;Monitor LCD&quot;,&quot;preco&quot;:350},';
    dados += '       {&quot;nome&quot;:&quot;Gravador de DVD&quot;,&quot;preco&quot;:120},';
    dados += '       {&quot;nome&quot;:&quot;Pendrive&quot;,&quot;preco&quot;:60}';
    dados += '    ]';
    dados += '}';
var obj = jQuery.parseJSON(dados);

alert( obj.nome);
alert( obj.produtos[0].nome );
alert( obj.produtos[0].preco );
alert( obj.produtos[1].nome );
alert( obj.produtos[1].preco );
</pre>
<p>Agora vamos ver a real vantagem de utilizar JSON que é  utilizá-lo para fazer AJAX e para isso a biblioteca JQuery nos fornece uma função chamada <em>$.getJSON</em>. </p>
<p>Exemplo:</p>
<pre class="brush: jscript; title: ; notranslate">
        $(document).ready(function(){
              $.getJSON('dados.json', function(data) {
                   $('#nome').html( data.nome);
                   $('#sobrenome').html( data.sobrenome );
                   $('#idade').html( data.idade );
                   $('#site').html( data.site );
             });
    });
</pre>
<p>A função <em>$.getJSON</em> recebe como parâmetros um nome de arquivo com dados no formato JSON, após o arquivo ser carregado ele é convertido em um objeto e passado por parâmetro(data) para a função que é responsável por manipular os valores.</p>
<p>Veja o <a href="http://www.botecodigital.info/exemplos/json/" target="_blank">exemplo de uso de JSON</a></p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/java/conectando-java-com-mongodb/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2011/10/java.png" class="crp_thumb wp-post-image" alt="Conectando Java com MongoDB" title="Conectando Java com MongoDB" /></a> <a href="http://www.botecodigital.info/java/conectando-java-com-mongodb/" rel="bookmark" class="crp_title">Conectando Java com MongoDB</a></li><li><a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Validando formulários com JQuery-Plugin-Validation" title="Validando formulários com JQuery-Plugin-Validation" /></a> <a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark" class="crp_title">Validando formulários com JQuery-Plugin-Validation</a></li><li><a href="http://www.botecodigital.info/bd-2/nosql-mongodb/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2011/09/Icon_MongoDB_by_xkneo.png" class="crp_thumb wp-post-image" alt="NoSQL: MongoDB" title="NoSQL: MongoDB" /></a> <a href="http://www.botecodigital.info/bd-2/nosql-mongodb/" rel="bookmark" class="crp_title">NoSQL: MongoDB</a></li><li><a href="http://www.botecodigital.info/jquery/carregando-um-combobox-com-ajax-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Carregando um ComboBox com AJAX com JQuery" title="Carregando um ComboBox com AJAX com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/carregando-um-combobox-com-ajax-com-jquery/" rel="bookmark" class="crp_title">Carregando um ComboBox com AJAX com JQuery</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Menu Sanfona com JQuery</title>
		<link>http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/</link>
		<comments>http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 13:42:04 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[JQuery]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[efeitos]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[menu accordian]]></category>
		<category><![CDATA[menu sanfona]]></category>

		<guid isPermaLink="false">http://www.botecodigital.info/?p=843</guid>
		<description><![CDATA[Um menu sanfona(Accordion Menu) é um menu divido por categorias que quando está mostrando os links de uma categoria esconde os links das outras(ele estica e comprime como uma sanfona). Esta funcionalidade pode também ser aplicada a um texto com vários tópicos ficando disponível os titulos e quando clicado mostra somente o texto do tópico. Este recurso é muito interessante quando temos um texto grande dividido em tópicos, pois não deixa a página muito longa. Nesta implementação vamos utilizar uma [...]]]></description>
			<content:encoded><![CDATA[<p>Um menu sanfona(Accordion Menu) é um menu divido por categorias que quando está mostrando os links de uma categoria esconde os links das outras(ele estica e comprime como uma sanfona). </p>
<p>Esta funcionalidade pode também ser aplicada a um texto com vários tópicos ficando disponível os titulos e quando clicado mostra somente o texto do tópico. Este recurso é muito interessante quando temos um texto grande dividido em tópicos, pois não deixa a página muito longa.</p>
<p>Nesta implementação vamos utilizar uma lista de definições ( dl &#8211; dt- dd ) então segue abaixo o HTML do menu:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;dl&gt;
    &lt;dt&gt;&lt;a href=&quot;#&quot;&gt;Menu 1&lt;/li&gt;&lt;/a&gt;&lt;/dt&gt;
    &lt;dd&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 1 - Item 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 1 - Item 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 1 - Item 3&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/dd&gt;
    &lt;dt&gt;&lt;a href=&quot;#&quot;&gt;Menu 2&lt;/li&gt;&lt;/a&gt;&lt;/dt&gt;
    &lt;dd&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 2 - Item 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 2 - Item 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 2 - Item 3&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/dd&gt;
    &lt;dt&gt;&lt;a href=&quot;#&quot;&gt;Menu 3&lt;/li&gt;&lt;/a&gt;&lt;/dt&gt;
    &lt;dd&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 3 - Item 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 3 - Item 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Menu 3 - Item 3&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/dd&gt;
&lt;/dl&gt;
</pre>
<p>Agora aplicamos um CSS:</p>
<pre class="brush: css; title: ; notranslate">
     dl { width: 300px; }
     dl,dd { margin: 0; }
     dt { background: #CCC; font-size: 18px; padding: 5px; margin: 2px; }
     dt a { color: #000; }
     dd a { color: #000; }
     ul { list-style: none; padding: 5px; }
</pre>
<p>Agora vamos a mágica com  a biblioteca  <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/">JQuery</a>(Não se esqueça de importar a biblioteca!):</p>
<pre class="brush: jscript; title: ; notranslate">
 $(document).ready(function(){
     $(&quot;dd&quot;).hide();
     $(&quot;dt a&quot;).click(function(){
        $(&quot;dd:visible&quot;).slideUp(&quot;slow&quot;);
        $(this).parent().next().slideDown(&quot;slow&quot;);
        return false;
     });
});
</pre>
<p>Na linha 2 escondemos todos os elementos <strong>dd</strong>(as definições ou seja os sub-links) as  ficando somente os <strong>dl</strong> (os titulos das categorias/tópicos) a mostra.</p>
<p>Na linha 3 definimos o evento onclick do link do elemento <strong>dt</strong> titulo para que faça a <a href="http://www.botecodigital.info/web/animando-com-jquery/">animação slideUP()</a>(linha 4) no elemento <strong>dd</strong> que está visível ocultando os sub-links.</p>
<p>Na linha 5 através do método <a href="http://docs.jquery.com/Traversing/parent" target="_blank">parent()</a> seleciona o elemento pai do link clicado(o elemento <strong>dt</strong>) e através do método <a href="http://docs.jquery.com/Traversing/next" target="_blank">next()</a> seleciona o próximo elemento a partir do elemento <strong>dt</strong> que contém o link clicado, que é o elemento <strong>dd</strong> e chama o método <a href="http://www.botecodigital.info/web/animando-com-jquery/">slideDown(&#8220;slow&#8221;); </a> que mostra os sub-links.</p>
<p><a href="http://www.botecodigital.info/exemplos/menusanfona/index.php" target="_blank">Veja o exemplo </a></p>
<p>Espero que seja util, até a próxima!</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" title="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" /></a> <a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark" class="crp_title">Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery</a></li><li><a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Iniciando com JQuery" title="Iniciando com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark" class="crp_title">Iniciando com JQuery</a></li><li><a href="http://www.botecodigital.info/web/animando-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Animando com JQuery" title="Animando com JQuery" /></a> <a href="http://www.botecodigital.info/web/animando-com-jquery/" rel="bookmark" class="crp_title">Animando com JQuery</a></li><li><a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Validando formulários com JQuery-Plugin-Validation" title="Validando formulários com JQuery-Plugin-Validation" /></a> <a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark" class="crp_title">Validando formulários com JQuery-Plugin-Validation</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Carregando um ComboBox com AJAX com JQuery</title>
		<link>http://www.botecodigital.info/jquery/carregando-um-combobox-com-ajax-com-jquery/</link>
		<comments>http://www.botecodigital.info/jquery/carregando-um-combobox-com-ajax-com-jquery/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 11:39:27 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[JQuery]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.botecodigital.info/?p=754</guid>
		<description><![CDATA[Como vimos em um artigo anterior sobre AJAX é muito fácil utilizar técnicas de AJAX para tornar um site dinâmico. Hoje veremos um exemplo fácil de como selecionar um estado em um ComboBox e carregar as cidades em outro. Para começarmos termos que ter os estados e as cidades armazenadas no banco de dados que podem ser obtidas a partir do site. Para ficar mais claro colocarei as DDL abaixo. Agora que já temos as tabelas em nosso banco MySQL [...]]]></description>
			<content:encoded><![CDATA[<p>Como vimos em um <a href="http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/">artigo anterior sobre AJAX</a> é muito fácil utilizar técnicas de AJAX para tornar um site dinâmico. Hoje veremos um exemplo fácil de como selecionar um estado em um ComboBox e carregar as cidades em outro.</p>
<p>Para começarmos termos que ter os estados e as cidades armazenadas no banco de dados que podem ser obtidas a <a href="http://www.webartz.com.br/mysql/banco-mysql-de-cidades-e-estados-do-brasil/" taregt="_blank">partir do site</a>. Para ficar mais claro colocarei as DDL abaixo.</p>
<pre class="brush: sql; title: ; notranslate">
CREATE TABLE tb_estados(
  id int(2) unsigned zerofill NOT NULL auto_increment,
  uf varchar(10) NOT NULL default '',
  nome varchar(20) NOT NULL default '',
  PRIMARY KEY  (`id`)
);

CREATE TABLE tb_cidades (
  id int(4) unsigned zerofill NOT NULL auto_increment,
  estado int(2) unsigned zerofill NOT NULL default '00',
  uf varchar(4) NOT NULL default '',
  nome varchar(50) NOT NULL default '',
  UNIQUE KEY id (id),
  KEY id_2 (`id`)
);
</pre>
<p>Agora que já temos as tabelas em nosso banco MySQL criamos uma página com os dois ComboBox com o dos estados já preenchido, para isto realizamos uma consulta ao banco de dados MySQL para preenche-lo.</p>
<pre class="brush: php; title: ; notranslate">
&lt;select name=&quot;estados&quot; id=&quot;estados&quot;&gt;
    &lt;?php
        mysql_connect('localhost','root','********');
        mysql_selectdb('combobox');

       $result = mysql_query(&quot;select * from tb_estados&quot;);

       while($row = mysql_fetch_array($result) ){
            echo &quot;&lt;option value='&quot;.$row['id'].&quot;'&gt;&quot;.$row['nome'].&quot;&lt;/option&gt;&quot;;

       }

    ?&gt;
&lt;/select&gt;

&lt;select name=&quot;cidades&quot; id=&quot;cidades&quot;&gt;
    &lt;option value=&quot;0&quot;&gt;Escolha um estado&lt;/option&gt;
&lt;/select&gt;
</pre>
<p>Na linha 3 conectamos no banco através da função <em>mysql_connect()</em> passando o host que esta o banco de dados, o usuário e a senha de acesso ao banco. NA linha 4 selecionamos o banco de dados que queremos utilizar com a função <em>mysql_selectdb()</em>.</p>
<p>Na linha 6 utilizamos a função <em>mysql_query()</em> para realizar uma consulta ao banco de dados para trazer todos os estados.</p>
<p>Na linha 8 utilizamos a função <em>mysql_fetch_array()</em> para acessar uma linha da nossa consulta e armazená-la na variável <em>$row</em>. A função <em>mysql_fetch_array()</em> retorna a linha da consulta em formato de array, sendo que cada índice do array é o nome da coluna em que o valor está.</p>
<p>Na linha 9 montamos as opções do nosso <em>select</em>.</p>
<p>Bom agora com nossa página pronta podemos inserir o código javascript(AJAX) para executar a consulta quando selecionarmos o estado. O código utiliza a biblioteca <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/">JQuery</a> então não esqueça de carregá-la antes de inserir o código.</p>
<pre class="brush: jscript; title: ; notranslate">
        $(document).ready(function(){
            $('#estados').change(function(){
                $('#cidades').load('cidades.php?estado='+$('#estados').val() );
            });
        });
</pre>
<p>Na linha 2 selecionamos o elemento com o id <em>estados</em>(o primeiro select), e adicionamos o evento <em>onChange</em> que é acionado quando ele muda de valor. Quando este evento for acionado(linha 3) ele vai selecionar o select com o id <em>cidades</em> fazer uma consulta AJAX a página <strong>cidade.php</strong> passando por parâmetro GET o id do estado que foi selecionado no select de estados. O retorno desta consulta será inserido dentro do select prenechendo as opções de cidades.</p>
<p>Bom agora que já temos um código javascript que faz uma requisição a uma página devemos criar esta página <img src='http://www.botecodigital.info/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Lembrando que o retorno desta página vai preencher nosso select, então ela deve retornar tags <em>option</em> certo!</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$idestado = $_GET['estado'];
mysql_connect('localhost','root','******');
mysql_selectdb('combobox');
$result = mysql_query(&quot;SELECT * FROM tb_cidades WHERE estado = &quot;.$idestado);
while($row = mysql_fetch_array($result) ){
    echo &quot;&lt;option value='&quot;.$row['id'].&quot;'&gt;&quot;.$row['nome'].&quot;&lt;/option&gt;&quot;;
}
?&gt;
</pre>
<p>O código é bem parecido com o anterior onde preenchemos o select estados, só que desta fez utilizaremos uma consulta com um cláusula <em>WHERE</em> onde selecionamos somente as cidade que tiverem o estado igual ao que foi passado por parâmetro <strong>GET</strong> e que recebemos na linha 2.</p>
<p>O download do exemplo pode ser feito <a href="http://www.botecodigital.info/exemplos/combo-ajax/ajax-combo.zip">aqui</a></p>
<p>Bom este exemplo é bem simples, é possível fazer muito mais coisas com JQuery e AJAX basta ter criatividade.</p>
<p>Até a próxima!</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/php/exemplo-de-autenticacao-parte-1/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/04/php.png" class="crp_thumb wp-post-image" alt="Exemplo de autenticação em PHP utilizando sessão- Parte 1" title="Exemplo de autenticação em PHP utilizando sessão- Parte 1" /></a> <a href="http://www.botecodigital.info/php/exemplo-de-autenticacao-parte-1/" rel="bookmark" class="crp_title">Exemplo de autenticação em PHP utilizando sessão- Parte 1</a></li><li><a href="http://www.botecodigital.info/php/pdo-php-data-object-trocar-de-banco-de-dados-ja-nao-e-dor-de-cabeca/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/04/php.png" class="crp_thumb wp-post-image" alt="PDO &#8211; PHP Data Object &#8211; Trocar de banco de dados já não é dor de cabeça" title="PDO &#8211; PHP Data Object &#8211; Trocar de banco de dados já não é dor de cabeça" /></a> <a href="http://www.botecodigital.info/php/pdo-php-data-object-trocar-de-banco-de-dados-ja-nao-e-dor-de-cabeca/" rel="bookmark" class="crp_title">PDO &#8211; PHP Data Object &#8211; Trocar de banco de dados já não é dor de cabeça</a></li><li><a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Trocando dados utilizando JSON" title="Trocando dados utilizando JSON" /></a> <a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark" class="crp_title">Trocando dados utilizando JSON</a></li><li><a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Iniciando com JQuery" title="Iniciando com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark" class="crp_title">Iniciando com JQuery</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/jquery/carregando-um-combobox-com-ajax-com-jquery/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery</title>
		<link>http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/</link>
		<comments>http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 20:01:23 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[efeitos]]></category>
		<category><![CDATA[fotos]]></category>
		<category><![CDATA[galeria]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[lightbox]]></category>
		<category><![CDATA[plugin JQuery]]></category>
		<category><![CDATA[PrettyPhoto]]></category>

		<guid isPermaLink="false">http://botecodigital.g8si.com/?p=426</guid>
		<description><![CDATA[Algo que muitas pessoal tem me perguntado é como criar uma galeria de fotos bem legal. Uma que estou utilizando muito, é feita com um plugin do JQuery chamada PrettyPhoto, ela utiliza um efeito chamado lightbox, que é parecido com um POPUP, mas bem mais estiloso . Bom para começar baixe o PrettyPhoto 2.4.3 e descomacte em uma pasta. Ele é divido em 3 pastas css, js e images, para usalo você vai precisar das 3. Crie um novo documento [...]]]></description>
			<content:encoded><![CDATA[<p>Algo que muitas pessoal tem me perguntado é como criar uma galeria de fotos bem legal. Uma que estou utilizando muito, é feita com um plugin do <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery" target="_blank">JQuery</a>  chamada <a href="http://www.no-margin-for-errors.com/projects/prettyPhoto-jquery-lightbox-clone/" target="_blank">PrettyPhoto</a>, ela utiliza um efeito chamado <a href="http://en.wikipedia.org/wiki/Lightbox_(JavaScript)" target="_blank">lightbox</a>, que é parecido com um POPUP, mas bem  mais estiloso <img src='http://www.botecodigital.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  .</p>
<p> Bom para começar baixe o <a href="http://www.no-margin-for-errors.com/projects/prettyPhoto-jquery-lightbox-clone/" target="_blank">PrettyPhoto 2.4.3</a>  e descomacte em uma pasta. Ele é divido em 3 pastas <strong>css</strong>, <strong>js</strong> e <strong>images</strong>, para usalo você vai precisar das 3.</p>
<p> Crie um novo documento HTML e inclua  na tag <em>header</em> a bilbioteca JQuery, o plugin que esta na pasta <strong>js</strong>,  a folha de estilo que esta na pasta <strong>css</strong>:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;script src=&quot;http://jqueryjs.googlecode.com/files/jquery-1.3.2.js&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;js/jquery.prettyPhoto.js&quot; type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/prettyPhoto.css&quot; type=&quot;text/css&quot; charset=&quot;utf-8&quot; /&gt;
</pre>
<p>Agora para criarmos a nossa galeria vamos precisar das fotos e das suas miniaturas, para nosso exemplo vamos armazena-la em uma pasta chamada <strong>img</strong>.</p>
<p>Para cada imagem vamos criar um link para imagem grande que quando clicado vai abri-la em nossoo lightbox.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;a href=&quot;img/foto1-g.jpg&quot; rel=&quot;prettyPhoto&quot;&gt;
   &lt;img src=&quot;img/foto1-p.jpg&quot; alt=&quot;Foto do Espaço 1&quot; /&gt;
&lt;/a&gt;
</pre>
<p>O atributo <strong><em>rel=&#8221;prettyPhoto&#8221;</em></strong> é utilizado  para selecionar os links que devem fazer parte de nossa galeria e  para isso deve ser aplicado o <strong>plugin PrettyPhoto</strong> que será responsavel por abrir a imagem que esta no atributo <em>href</em> de nosso link no <em>lightbox</em>.</p>
<p>Para aplicar o plugin nos links acrescentamos na tag <em>header</em> o seguinte código:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;
    $(document).ready(function(){
	    $(&quot;a[rel^='prettyPhoto']&quot;).prettyPhoto();
	});
&lt;/script&gt;
</pre>
<p>Exemplo de <a href="http://www.botecodigital.info/exemplos/prettyphoto/" target="_blank">galeria feita com PrettyPhoto</a>.</p>
<p>Bem simples não?</p>
<p>Existem muitos Plugins para JQuery com as mais variadas funções, então não tente reinventar a roda todo dia, apenas procure uma que sirva no seu caminhão.</p>
<p>Aquele Abraço.</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Menu Sanfona com JQuery" title="Menu Sanfona com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark" class="crp_title">Menu Sanfona com JQuery</a></li><li><a href="http://www.botecodigital.info/php/listando-arquivos-de-um-diretorio-em-php/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/04/php.png" class="crp_thumb wp-post-image" alt="Listando arquivos de um diretório em PHP" title="Listando arquivos de um diretório em PHP" /></a> <a href="http://www.botecodigital.info/php/listando-arquivos-de-um-diretorio-em-php/" rel="bookmark" class="crp_title">Listando arquivos de um diretório em PHP</a></li><li><a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Validando formulários com JQuery-Plugin-Validation" title="Validando formulários com JQuery-Plugin-Validation" /></a> <a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark" class="crp_title">Validando formulários com JQuery-Plugin-Validation</a></li><li><a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Trocando dados utilizando JSON" title="Trocando dados utilizando JSON" /></a> <a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark" class="crp_title">Trocando dados utilizando JSON</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Introdução ao AJAX com JQuery</title>
		<link>http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/</link>
		<comments>http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/#comments</comments>
		<pubDate>Sat, 09 May 2009 12:59:20 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[ajax]]></category>

		<guid isPermaLink="false">http://botecodigital.g8si.com/?p=292</guid>
		<description><![CDATA[Para quem já trabalha com internet há algum tempo esta é uma sigla bastante comum. Mas o que seria exatamente AJAX? Para começar vamos esclarecer que AJAX não é uma tecnologia e sim uma metodologia que utiliza tecnologias não tão novas assim como XML e Javascript para fazer requisições assíncronas ao servidor e com as informações retornadas modificar a página já carregada utilizando DOM para modificar-la sem recarregar todo conteúdo novamente. E com isso economizar no tráfego de internet e [...]]]></description>
			<content:encoded><![CDATA[<p>Para quem já trabalha com internet há algum tempo esta é uma sigla bastante comum. Mas o que seria exatamente <strong>AJAX</strong>?</p>
<p>Para começar vamos esclarecer que <strong>AJAX</strong> não é uma tecnologia e sim uma metodologia que utiliza tecnologias não tão novas assim como <acronym title="eXtensible Markup Language">XML</acronym> e Javascript para fazer requisições assíncronas ao servidor e com as informações retornadas modificar a página já carregada utilizando DOM para modificar-la sem recarregar todo conteúdo novamente. E com isso economizar no tráfego de internet e melhorar a experiência do usuário.</p>
<p>Primeiramente vejamos como uma página simples é carregada.</p>
<p>1 . O usuário digita um URL no campo endereço aperta enter e o navegador envia uma requisição normalmente do tipo GET para o servidor que retorna para o navegador o conteúdo que é exibido.</p>
<p>2. O usuário clica em um link da página então o navegador faz outra requisição ao servidor que envia todo o conteúdo da nova página novamente.</p>
<p><img src="http://www.botecodigital.info/wp-content/uploads/2009/05/ajax.png" alt="Requisição ajax" title="Requisição ajax" width="450" height="534" class="aligncenter size-full wp-image-312" /></p>
<p>Se pensarmos um pouco, muito conteúdo é repetido é baixado quando navegamos entre as página de um mesmo site, como topo, menus, rodapés etc.</p>
<p>Com base nisso, porque não carregar somente o conteúdo que mudou a cada requisição, sem mexer no resto do conteúdo da página? Isto é a base do AJAX.</p>
<p>Quando começou a ser utilizado a o retorno do servidor era feito em XML (por isso o X da sigla) mas com o passar do tempo passou a se chamar AJAX toda requisição assíncrona ao servidor Web.</p>
<p>Bom para entendermos como fazer uma requisição assíncrona precisamos conhecer 2 tipos de requisição que o protocolo HTTP aceita:</p>
<p><strong>GET:</strong> É o método mais comum: solicita algum recurso como um arquivo ou um script (qualquer dado que estiver identificado pelo URI) por meio do protocolo HTTP. O método GET é reconhecido por todos os servidores.</p>
<p><strong>POST:</strong> Envia dados para serem processados (por exemplo, dados de um formulário HTML) para o recurso especificado. Os dados são incluídos no corpo do comando.</p>
<p>Bom vamos agora ver um pequeno exemplo de como fazer requisições assíncronas e carregar o conteúdo dentro de um div utilizando a JQuery.</p>
<h5>HTML Principal</h5>
<pre class="brush: xml; title: ; notranslate">
&lt;div id=&quot;carregando&quot;&gt;Carregando&lt;/div&gt;

&lt;h1&gt;Cabeçalho&lt;/h1&gt;

&lt;a href=&quot;conteudo1.php&quot;&gt;Conteudo 1&lt;/a&gt;
&lt;a href=&quot;conteudo2.php&quot;&gt;Conteudo 2&lt;/a&gt;
&lt;a href=&quot;conteudo3.php&quot;&gt;Conteudo 3&lt;/a&gt;
&lt;a href=&quot;conteudo4.php&quot;&gt;Conteudo 4&lt;/a&gt;

&lt;div id=&quot;conteudo&quot;&gt;&lt;/div&gt;
</pre>
<p>Como vimos não é nada diferente do que conhecemos, também temos os arquivos com o conteúdo que irá dentro do div #conteudo:</p>
<h5>conteudo1.php</h5>
<pre class="brush: xml; title: ; notranslate">
&lt;h1&gt; Conteudo 1&lt;/h1&gt;
&lt;p&gt;Donec scelerisque aliquet nunc id mattis. Aliquam auctor bibendum massa at dapibus. Suspendisse ante metus, ornare vitae venenatis vitae, posuere sit amet risus. Nam lacus orci, placerat ut tincidunt nec, tincidunt mollis nisl? Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse id arcu sed urna tincidunt semper. Mauris eu mauris nec est euismod dapibus. Suspendisse imperdiet est id purus placerat consectetur. Curabitur interdum ipsum vitae lacus tincidunt nec elementum nunc consectetur. Etiam dapibus felis non nisl tempor lobortis. Mauris commodo varius ligula eget posuere. Suspendisse ligula arcu, tincidunt dictum varius in, bibendum in purus. Maecenas faucibus, lorem vel fermentum vehicula, dui magna dignissim mauris, viverra egestas magna eros eu lorem. Donec facilisis felis suscipit dui blandit eget commodo erat feugiat. Proin eget diam risus.&lt;/p&gt;
</pre>
<h5>conteudo2.php</h5>
<pre class="brush: xml; title: ; notranslate">
&lt;h2&gt; Conteudo 2&lt;/h2&gt;
&lt;p&gt;Nullam non metus risus, in congue velit. Mauris vitae est massa! Nunc suscipit iaculis varius. Suspendisse eros neque, consectetur ut tincidunt sed, placerat eget ipsum? Phasellus eget mauris libero. Donec elit nunc, varius nec auctor vitae, dapibus non turpis. Donec cursus malesuada quam, id accumsan ante imperdiet ac. Donec purus lorem, fringilla fermentum tempus a, porta quis velit. Morbi quis arcu magna, in ultrices neque? Nullam molestie ultricies nibh placerat varius?&lt;/p&gt;
</pre>
<h5>conteudo3.php</h5>

<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">h3</span>&gt;</span> Conteudo 3<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h3</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>Vestibulum eget tellus eros. Mauris et ante id diam malesuada dignissim. Nam vel sem pulvinar velit tincidunt sodales id et ipsum. Cras magna turpis; egestas non dignissim id; malesuada vel velit! Vivamus libero lorem; congue ut auctor sed; rhoncus mattis magna. Sed eget purus ac ante feugiat laoreet! Aliquam erat volutpat. Duis eu nisi ac metus interdum lobortis eget vitae enim. Nunc adipiscing accumsan magna, at rutrum tortor condimentum ac. Sed lobortis adipiscing erat, faucibus blandit odio mollis in. Integer ipsum justo, varius ac malesuada in, laoreet vitae lacus. Donec varius mauris nec dui tristique aliquet. Donec eros arcu, tristique eget fringilla sit amet, feugiat vel leo. Ut elit justo, elementum ut convallis in, consequat in eros. Proin a leo sed dolor aliquam ultrices.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;</span></pre></div></div>

<h5>conteudo4.php</h5>
<pre class="brush: xml; title: ; notranslate">
&lt;h4&gt; Conteudo 4&lt;/h4&gt;
&lt;p&gt;Cras porta, tellus eu elementum pulvinar, tellus nulla tempus neque, ac posuere sem sem varius quam? Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse lobortis feugiat ante interdum facilisis. Proin ante velit, congue vel lobortis a, commodo id risus. Ut sapien turpis, convallis condimentum suscipit in, imperdiet ut ante. Nullam molestie cursus leo, quis luctus risus bibendum quis? Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Suspendisse lacus nulla; tincidunt consequat rhoncus sed, suscipit sit amet tellus. Fusce faucibus, justo quis mollis volutpat, ligula est sodales dui; eu dictum ante urna vitae ipsum. Vivamus elementum leo et dui viverra blandit. Nunc ac blandit tellus. Sed dui nibh, porttitor nec sagittis quis, commodo tincidunt libero.&lt;/p&gt;
</pre>
<p>Bom com os arquivos <strong>HTML </strong>prontos vamos ao que interessa, o código Javascript que é responsável pelas requisições assíncronas pelo método <strong>GET</strong>:</p>
<pre class="brush: jscript; title: ; notranslate">
  $(document).ready(function(){
      $(&quot;a&quot;).each(function() {
           var href = $(this).attr('href');
           $(this).attr('href','javascript:void(0)');
           $(this).click(function(){
                $('#conteudo').html(&quot;&quot;);
       	    	$(&quot;#carregando&quot;).show('slow');
                 $.get( href , function(data){
                        $('#conteudo').html(data);
                        $(&quot;#carregando&quot;).hide('slow');
                 });
                return null;
        });
     });
  });
</pre>
<p>Na linha 2 utilizamos o método <strong>each</strong> que para cada elemento encontrado pelo seletor, no caso &#8220;a&#8221;(links), ele vai executar a função definida que captura a URL do atributo <strong>href</strong> do link e armazena em uma variável (linha 3), seta o atributo <strong>href</strong> para não apontar mais para nenhum link(linha 4), adiciona o evento <strong>click</strong> (linha 5), dentro do evento <strong>click</strong> limpamos o <em>div</em> <strong>#conteudo</strong> (linha 6), mostramos a mensagem de carregando (linha 7) e utilizamos o método <strong>$.get(url,function(data){})</strong> que realmente faz a mágica( linha 8).</p>
<p>O método <strong>$.get(url,function(data){})</strong> faz a requisição assíncrona com o servidor e passa para a função passada por parâmetro o retorno do servidor na variável data.</p>
<p>Após receber o retorno do servidor jogamos este retorno dentro da <em>div</em> <strong>#conteudo</strong>(linha 9) e escondemos a mensagem de carregando (linha 10).</p>
<p>Para ver o exemplo funcionando <a href="http://www.botecodigital.info/exemplos/ajax/" target="_blank">clique aqui</a></p>
<p>Veremos agora como criar um formulário utilizando AJAX pelo método <strong>POST</strong>:</p>
<h5>HTML</h5>
<pre class="brush: xml; title: ; notranslate">
&lt;div id=&quot;carregando&quot;&gt;Carregando&lt;/div&gt;
&lt;div id=&quot;mensagem&quot;&gt;&lt;/div&gt;

&lt;form action=&quot;processapost.php&quot; method=&quot;post&quot;&gt;

    &lt;label for=&quot;nome&quot;&gt;Nome:&lt;/label&gt;
    &lt;input type=&quot;text&quot; name=&quot;nome&quot; /&gt;

    &lt;label for=&quot;email&quot;&gt;E-mail&lt;/label&gt;
    &lt;input type=&quot;text&quot; name=&quot;email&quot; /&gt;

    &lt;input type=&quot;submit&quot; value=&quot;Enviar&quot; /&gt;
&lt;/form&gt;
</pre>
<h5>Script que processa a requisição POST (processapost.php)</h5>
<pre class="brush: php; title: ; notranslate">
        Dados enviados:&lt;br /&gt;&lt;br /&gt;
       &lt;?php echo &quot;Nome: &quot;.$_POST['nome']; ?&gt;
       &lt;br /&gt;
       &lt;?php echo &quot;E-mail: &quot;.$_POST['email']; ?&gt;
</pre>
<h5>E o código Javascript:</h5>
<pre class="brush: jscript; title: ; notranslate">
  $(document).ready(function(){
        var action = $('form').attr('action');
        $('form').attr('action','javascript:void(0);');
        $('form').submit(function(){
       	    	$(&quot;#carregando&quot;).show('slow');

                 $.post(action ,jQuery(&quot;form&quot;).serialize(),  function(data){
                        $('#mensagem').html(data);
                        $('#mensagem').show();
                        $(&quot;#carregando&quot;).hide('slow');
                 });
                return null;
        });

	});
</pre>
<p>Na linha 2 capturamos a URL que irá processar e retornar os valores do nosso formulário e depois (linha 3) configuramos para que o formulário não envie a requisição como faria normalmente, e configuramos o evento <strong>submit</strong> (linha 4) que é ativado quando o formulário é enviado.</p>
<p>Quando isto acontecer ele irá mostrar a mensagem de carregando (linha 5) e utilizamos o método <strong>$.post(url ,dados, function(data)){}</strong> que faz uma requisição via <strong>POST</strong> para <strong>url</strong>, enviando um array <strong>dados</strong> e após executa a função recebendo por parâmetro <strong>data</strong> com o retorno do servidor. Na linha 8 inserimos o retorno da requisição na <strong>div #mensagem</strong>, deixamos visível esta <strong>div</strong> e por fim escondemos a mensagem de carregando(linha 10).</p>
<p>Os dados enviados são passados na forma de array no fomato:</p>
<pre class="brush: jscript; title: ; notranslate">
 { var1: &quot;valor1&quot;, var2: &quot;valor2&quot; }
</pre>
<p>ou na forma de string:</p>
<pre class="brush: jscript; title: ; notranslate">
 var1=valor&amp;var2=valor
</pre>
<p>Como vimos no exemplo utilizamos <strong>jQuery(&#8220;form&#8221;).serialize(),  </strong> que converte um conjunto de <em>inputs</em> em uma string no segundo formato.</p>
<p>Para ver o exemplo funcionando <a href="http://www.botecodigital.info/exemplos/ajax/post.php" target="_blank">clique aqui</a></p>
<p>Este foi o tão aguardado artigo sobre AJAX com JQuery, os exemplos são bastante simples mas com um pouco de criatividade dá para fazer coisas bem legais.</p>
<p>Até mais &#8220;Vida longa e prospera!&#8221;</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/php/criando-arquivos-pdf-com-php-e-classe-fpdf/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/04/php.png" class="crp_thumb wp-post-image" alt="Criando arquivos PDF com PHP e classe FPDF" title="Criando arquivos PDF com PHP e classe FPDF" /></a> <a href="http://www.botecodigital.info/php/criando-arquivos-pdf-com-php-e-classe-fpdf/" rel="bookmark" class="crp_title">Criando arquivos PDF com PHP e classe FPDF</a></li><li><a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Validando formulários com JQuery-Plugin-Validation" title="Validando formulários com JQuery-Plugin-Validation" /></a> <a href="http://www.botecodigital.info/jquery/validando-formularios-com-jquery-plugin-validation/" rel="bookmark" class="crp_title">Validando formulários com JQuery-Plugin-Validation</a></li><li><a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Trocando dados utilizando JSON" title="Trocando dados utilizando JSON" /></a> <a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark" class="crp_title">Trocando dados utilizando JSON</a></li><li><a href="http://www.botecodigital.info/php/cakephp-%e2%80%93-validando-um-formlario-com-model-sem-controller/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/08/cakephp.png" class="crp_thumb wp-post-image" alt="CakePHP – Validando um formlário com Model sem Controller" title="CakePHP – Validando um formlário com Model sem Controller" /></a> <a href="http://www.botecodigital.info/php/cakephp-%e2%80%93-validando-um-formlario-com-model-sem-controller/" rel="bookmark" class="crp_title">CakePHP – Validando um formlário com Model sem Controller</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Animando com JQuery</title>
		<link>http://www.botecodigital.info/web/animando-com-jquery/</link>
		<comments>http://www.botecodigital.info/web/animando-com-jquery/#comments</comments>
		<pubDate>Sun, 12 Apr 2009 00:27:56 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[animacao]]></category>
		<category><![CDATA[animate]]></category>
		<category><![CDATA[efetos]]></category>
		<category><![CDATA[fadein]]></category>
		<category><![CDATA[fadeout]]></category>
		<category><![CDATA[hide]]></category>
		<category><![CDATA[show]]></category>
		<category><![CDATA[slideToggle]]></category>
		<category><![CDATA[toggle]]></category>

		<guid isPermaLink="false">http://botecodigital.g8si.com/?p=241</guid>
		<description><![CDATA[Olá pessoal como já vimos o básico para se trabalhar com a biblioteca JQuery em um artigo anterior vamos apresentar hoje alguns métodos de animação. show() e hide() Para começar vamos simplesmente esconder e mostrar um elemento da página para isso utilizamos o método hide() para esconder e o método show() para mostrá-lo. demo A maior parte dos métodos de animação da JQuery aceitam um parâmetro que define sua velocidade de animação em milissegundos. Existem também dois valores default que [...]]]></description>
			<content:encoded><![CDATA[<p>Olá pessoal como já vimos o básico para se trabalhar com a biblioteca JQuery em um <a href="http://www.botecodigital.info/javascript/iniciando-com-jquery">artigo anterior</a> vamos apresentar hoje alguns métodos de animação.</p>
<h3>show() e hide()</h3>
<p>Para começar vamos simplesmente esconder e mostrar um elemento da página para isso utilizamos o método  <strong>hide()</strong> para esconder e o método <strong>show()</strong> para mostrá-lo.</p>
<pre class="brush: plain; title: ; notranslate">
    $('#conteudo').hide();

    $('.elemento').click(function(){
        $('#conteudo').show('slow');
    });

    $('.elemento2').click(function(){
        $('#conteudo').hide('fast');
    });
</pre>
<p><a href="http://www.botecodigital.info/exemplos/show.php" target="_blank">demo</a></p>
<p>A maior parte dos métodos de animação da JQuery aceitam um parâmetro que define sua velocidade de animação em milissegundos. Existem também dois valores <em>default</em> que também podem ser usados: <strong>slow</strong> que equivale a 600 milissegundos e o <strong>fast</strong> que equivale a 400 milissegundos.</p>
<p>Se nenhum parâmetro for especificado para os métodos <strong>show()</strong> e <strong>hide()</strong> ele executarão sem nenhuma animação simplesmente aparecendo/desaparecendo.</p>
<h3>toogle() e slideToggle()</h3>
<p>Um efeito bastante utilizado é o de clicar em um elemento para mostrar outro e clicar novamente no mesmo <em>link</em> para esconde-lo sendo que para isso ele desliza na tela. Estes efeitos são implementados pela JQuery pelos métodos <strong>toggle</strong> e <strong>slideToggle()</strong>.</p>
<p>Se você precisar apenas deslizar o elemento para cima ou para baixo e não permitir que ele volte a posição original você também pode utilizar os métodos <strong>slideUp()</strong> e <strong>slideDown()</strong>.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('a.l1').click(function(){
        $('#conteudo').toggle('slow');
    });

    $('a.l2').click(function(){
        $('#conteudo').slideToggle('slow');
    });
</pre>
<p><a href="http://www.botecodigital.info/exemplos/slidetoggle.php" target="_blank">demo</a></p>
<h3>fadeIn() e fadeOut()</h3>
<p>Outros efeitos interessantes são os <strong>fadeIn()</strong> e o <strong>fadeOut()</strong> que faz o efeito de esmaecer, ou seja, o elemento vai ficando transparente até sumir, ou o contrário.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('a.fadein').click(function(){
        $('#conteudo').fadeIn(1000);
    });

    $('a.fadeout').click(function(){
        $('#conteudo').fadeOut(1000);
    });
</pre>
<p><a href="http://www.botecodigital.info/exemplos/fade.php" target="_blank">demo</a></p>
<h3>Animate</h3>
<p>O método <strong>animate</strong> permite uma grande flexibilidade de animação, já consegui até fazer uma abertura de site ao estilo flash utilizando-o.</p>
<p>O <strong>animate()</strong> permite modificar várias propriedades do elemento alvo como largura, altura, opacidade, posição, margem, etc.</p>
<p>O verdadeiro poder deste método é que ele permite ser chamado várias vezes em sequência permitindo animações bastante complexas.</p>
<p>Para chamar o método <strong>animate()</strong> uilizamos dois parâmetros com as propriedades que serão modificadas e a velocidade desta animação. Segue abaixo uma pequena lista de parâmetros que o método <strong>animate()</strong> aceita.</p>
<ul>
<li><strong>width:</strong> Largura do elemento</li>
<li><strong>height:</strong> Altura do elemento</li>
<li><strong>opacity:</strong> Transparencia do elemento</li>
<li><strong>marginLeft:</strong> Margem esquerda</li>
<li><strong>marginTop:</strong> Margem superior</li>
<li><strong>marginRight:</strong> Margem direita</li>
<li><strong>marginBottom:</strong> Margem inferior</li>
<li><strong>top:</strong> Posição em relação ao topo(somente funciona se a propriedade positon do CSS estiver em absolute)</li>
<li><strong>left:</strong> Posição em relação a esquerda(somente funciona se a propriedade positon do CSS estiver em absolute)</li>
<li><strong>fontSize:</strong> Tamanho da fonte</li>
<li><strong>borderWidth:</strong> Tamanho da Borda</li>
</ul>
<pre class="brush: jscript; title: ; notranslate">
         $('a').click(function(){
            $('#conteudo').animate({width: &quot;400&quot;,opacity : 0.2}, 1200)
            .animate({height: &quot;400&quot;,opacity : 1},1200)
            .animate({opacity : 0.2});
        });
</pre>
<p><a href="http://www.botecodigital.info/exemplos/animate.php" target="_blank">demo</a></p>
<p>Bom foi isso, espero que tenham gostado, desculpem pelo atraso do post, falta de energia no final de semana(da companhia de eletricidade e minha <img src='http://www.botecodigital.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>
<p>Fiquem atentos no próximo post vamos brincar um pouco com ajax com JQuery.</p>
<p>T++.c</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Menu Sanfona com JQuery" title="Menu Sanfona com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark" class="crp_title">Menu Sanfona com JQuery</a></li><li><a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Iniciando com JQuery" title="Iniciando com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/iniciando-com-jquery/" rel="bookmark" class="crp_title">Iniciando com JQuery</a></li><li><a href="http://www.botecodigital.info/web/protegendo-e-mails-da-sua-pagina-contra-bots/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2009/06/html.png" class="crp_thumb wp-post-image" alt="Protegendo os e-mails da sua página contra bots" title="Protegendo os e-mails da sua página contra bots" /></a> <a href="http://www.botecodigital.info/web/protegendo-e-mails-da-sua-pagina-contra-bots/" rel="bookmark" class="crp_title">Protegendo os e-mails da sua página contra bots</a></li><li><a href="http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Introdução ao AJAX com JQuery" title="Introdução ao AJAX com JQuery" /></a> <a href="http://www.botecodigital.info/web/introducao-ao-ajax-com-jqurey/" rel="bookmark" class="crp_title">Introdução ao AJAX com JQuery</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/web/animando-com-jquery/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Iniciando com JQuery</title>
		<link>http://www.botecodigital.info/jquery/iniciando-com-jquery/</link>
		<comments>http://www.botecodigital.info/jquery/iniciando-com-jquery/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 20:01:42 +0000</pubDate>
		<dc:creator>Rodrigo Aramburu</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[.addClass]]></category>
		<category><![CDATA[attr]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[removeClass]]></category>
		<category><![CDATA[val()]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://botecodigital.g8si.com/?p=184</guid>
		<description><![CDATA[Trabalhar com javascript sempre foi uma grande dor de cabeça dos desenvolvedores web, o principal motivo é a incompatibilidade e a dificuldade de manipular o DOM. Visando solucionar este problema surgiu uma biblioteca que facilita bastante a vida de quem trabalha com javascript a JQuery. Uma biblioteca que permite manipular e selecionar elementos do DOM de forma muito fácil. Você pode baixá-la pelo seguinte endereço jquery.js ou também pode utilizá-la pelo google pelo seguinte link &#8220;http://jqueryjs.googlecode.com/files/jquery-1.3.2.js&#8221; e deve ser inserida [...]]]></description>
			<content:encoded><![CDATA[<p>Trabalhar com javascript sempre foi uma grande dor de cabeça dos desenvolvedores web, o principal motivo é a incompatibilidade e a dificuldade de manipular o <a href="http://pt.wikipedia.org/wiki/Modelo_de_Objeto_de_Documentos" target="_blank"> <acronym title="Document Object Model - Modelo de Objetos de Documentos">DOM</acronym></a>.</p>
<p>Visando solucionar este problema surgiu uma biblioteca que facilita bastante a vida de quem trabalha com javascript a  <a href="http://www.jquery.com" target="_blank">JQuery</a>. Uma biblioteca que permite manipular e selecionar elementos do <acronym title="Document Object Model - Modelo de Objetos de Documentos">DOM</acronym> de forma muito fácil.</p>
<p>Você pode baixá-la pelo seguinte endereço <a href="http://docs.jquery.com/Downloading_jQuery" target="_blank">jquery.js</a> ou também pode utilizá-la pelo google pelo seguinte link &#8220;<a href="http://jqueryjs.googlecode.com/files/jquery-1.3.2.js">http://jqueryjs.googlecode.com/files/jquery-1.3.2.js</a>&#8221;  e deve ser inserida na <em>tag head</em> (&lt;script src=&#8221;jquery.js&#8221;&gt;&lt;/script&gt;).</p>
<p>Vamos aos exemplos:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;div id=&quot;content&quot;&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Teste1&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Teste2&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Teste3&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Teste4&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Teste5&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</pre>
<p>Bom vamos começar por um clássico quando clicarmos no link exibiremos a mensagem <strong>Hellos World</strong>:</p>
<pre class="brush: jscript; title: ; notranslate">
$(document).ready(function() {
    $('a').click(function(){
        alert(&quot;Hello World&quot;);
    });
});
</pre>
<p>Antes de explicarmos o código vale chamar atenção para <strong>função <em>$()</em> ela recebe por parâmetro um seletor que identificará um elemento HTML e é através desta função chamaremos outras funções da biblioteca jQuery utilizando o operador &#8220;.&#8221;</strong> .</p>
<p>No nosso exemplo a primeira coisa que fazemos é selecionarmos o  <strong>document</strong> ou seja o documento HTML em si e utilizarmos a função <em>ready</em> que executa a função passada para ela por parâmetro quando o <acronym title="Document Object Model - Modelo de Objetos de Documentos">DOM</acronym> estiver pronto, ou seja, a página estiver carregada. Este é um recurso essencial já que sem ele as funções podem serem executadas sem que seus alvos(seletores) tenham sido carregados.</p>
<p>Na linha 2 selecionamos o elemento &#8220;<em>a</em>&#8221; ou seja os links da página e chamamos a função <em>click</em> e passamos por parâmetro uma função que exibe um <em>alert(&#8220;Hello World&#8221;)</em>. A função <em>click</em> é, resumidamente, uma alias para o atributo <em>onclick</em> do elemento, então agora em qualquer link que clicarmos na página será exibida a mensagem &#8220;Hello World&#8221;.</p>
<p>Esta é uma das maiores facilidades que a JQuery proporciona, <strong>permitir que utilizemos seletores <acronym title="Cascading Style Sheets">CSS</acronym> para selecionarmos os elementos do DOM</strong>. Podemos desta forma selecionar os elementos com muita facilidade como por exemplo:</p>
<pre class="brush: jscript; title: ; notranslate">
    $('h3')
    $('.botao')
    $('#conteudo')
    $('.content li a')
</pre>
<p>Na linha 1 selecionamos todos os elementos <em>h3</em> da página, na 2 todos os elementos da classe <em>botao</em> na linha 3 selecionamos o elemento que tiver o id <em>conteudo</em>, na linha 4 selecionamos todos os elementos que <em>a</em> que estiverem dentro de um elemento <em>li</em> que estiverem dentro de um elemento que pertença a classe <em>content</em>.</p>
<p>Um outro seletor muito importante é o <strong><em> $(this)</em></strong> com ele é possível acessar a referência do elemento que chamou o método como vemos no exemplo asseguir.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#bloco a').click(function(){
    alert( $(this).attr('title'))
} );
</pre>
<h3>Métodos mais comuns da JQuery</h3>
<p>Vamos fazer agora uma pequena introdução à alguns métodos do JQuery:</p>
<pre class="brush: jscript; title: ; notranslate">
$('#bloco').html();
</pre>
<p>Retorna o HTML que estiver dentro do elemento.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#bloco').html(&quot;Texto aqui&quot;);
</pre>
<p>Insere o texto passado por parâmentro dentro do elemento. Elimimando o conteúdo antigo.</p>
<pre class="brush: jscript; title: ; notranslate">
   $('#bloco').append(&quot;Texto aqui&quot;);
</pre>
<p>Adiciona o texto enviado por parâmetro no final do conteúdo do elemento selecionado.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco a').attr('title','Boteco Digital');
</pre>
<p>Define o valor para uma propriedade do elemento selecionado.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco a').attr('title');
</pre>
<p>Retorna o valor de uma propriedade do elemento selecionado.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco input').val();
</pre>
<p>Retorna o valor de campo do formulário.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco').addClass(&quot;vermelho&quot;);
</pre>
<p>Adiciona a classe passada por parâmetro ao elemento selecionado.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco').hover(function() {
		$(this).addClass(&quot;verde&quot;);
	}, function() {
		$(this).removeClass(&quot;verde&quot;);
	});
</pre>
<p>Simula o :hover, quando o mouse estiver sobre o elemento selecionado executa a linha 2, quando o mouse saber de cima do elemento selecionado executa a linha 4.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco').css('background','#CCC');
</pre>
<p>Define propriedade CSS para um elemento selecionado.</p>
<pre class="brush: jscript; title: ; notranslate">
    $('#bloco').css('background-color');
</pre>
<p>Retorna o valor da propriedade CSS.</p>
<pre class="brush: jscript; title: ; notranslate">
$('#bloco select').change(function(){
    alert( $(this).val())
} );
</pre>
<p>Executa a função passada por parâmetro quando o elemento selecionado for alterado<br />
</p>
<p>Mais funções podem ser encontradas <a href="http://docs.jquery.com/Events" target="_blank">aqui</a>.</p>
<p>Pessoal comentem o que acharam, se está claro. No próximo artigo irei ensinar como fazer um pouco de animação com JQuery.</p>
<p>T++.c</p>
<div id="crp_related"><h4>Posts Relacionados:</h4><ul><li><a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Menu Sanfona com JQuery" title="Menu Sanfona com JQuery" /></a> <a href="http://www.botecodigital.info/jquery/menu-sanfona-com-jquery/" rel="bookmark" class="crp_title">Menu Sanfona com JQuery</a></li><li><a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Trocando dados utilizando JSON" title="Trocando dados utilizando JSON" /></a> <a href="http://www.botecodigital.info/jquery/trocando-dados-utilizando-json/" rel="bookmark" class="crp_title">Trocando dados utilizando JSON</a></li><li><a href="http://www.botecodigital.info/web/protegendo-e-mails-da-sua-pagina-contra-bots/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2009/06/html.png" class="crp_thumb wp-post-image" alt="Protegendo os e-mails da sua página contra bots" title="Protegendo os e-mails da sua página contra bots" /></a> <a href="http://www.botecodigital.info/web/protegendo-e-mails-da-sua-pagina-contra-bots/" rel="bookmark" class="crp_title">Protegendo os e-mails da sua página contra bots</a></li><li><a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark"><img width="50" height="50" src="http://www.botecodigital.info/wp-content/uploads/2010/05/jquery.png" class="crp_thumb wp-post-image" alt="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" title="Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery" /></a> <a href="http://www.botecodigital.info/web/construindo-uma-galeria-de-fotos-com-o-plugin-prettyphoto-do-jquery/" rel="bookmark" class="crp_title">Construindo uma Galeria de Fotos com o plugin PrettyPhoto do JQuery</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.botecodigital.info/jquery/iniciando-com-jquery/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

