<?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>Felipe de Albuquerque &#187; javaScript</title>
	<atom:link href="http://www.felipealbuquerque.com/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.felipealbuquerque.com</link>
	<description>Front-End Engineer &#38; Designer / Web Designer / Web Developer</description>
	<lastBuildDate>Sun, 13 Mar 2011 16:01:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Efeito de Zebrar Tabelas com jQuery</title>
		<link>http://www.felipealbuquerque.com/2010/11/17/efeito-de-zebrar-tabelas-com-jquery/</link>
		<comments>http://www.felipealbuquerque.com/2010/11/17/efeito-de-zebrar-tabelas-com-jquery/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 13:00:13 +0000</pubDate>
		<dc:creator>Felipe de Albuquerque</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[javaScript]]></category>

		<guid isPermaLink="false">http://www.felipealbuquerque.com/?p=606</guid>
		<description><![CDATA[Zebrar tabelas é um recurso amplamente utilizado para facilitar a leitura em documentos, além de dar um charme no projeto. Para pintar alternadamente as linhas de uma tabela com Javascript na sintaxe nativa, teríamos que fazer um algoritmo para identificar se o elemento é par ou ímpar, e assim ir dando formatação as linhas. O]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/MenuComjQuery.jpg"><img class="aligncenter size-full wp-image-478" title="Menu Com jQuery" src="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/MenuComjQuery.jpg" alt="" width="640" height="159" /></a></p>
<p>Zebrar tabelas é um recurso amplamente utilizado para facilitar a leitura em documentos, além de dar um charme no projeto.</p>
<p>Para pintar alternadamente as linhas de uma tabela com Javascript na sintaxe nativa, teríamos que fazer um algoritmo para identificar se o elemento é par ou ímpar, e assim ir dando formatação as linhas.</p>
<p>O jQuery possui uma gama enorme de seletores próprios, que praticamente nos possibilita o controle total da interface. Vamos usar um desses seletores para identificar quais elementos &lt;tr&gt; da interface são pares, e atribuir cor a esses elementos.</p>
<p>Para este exercício, vamos criar uma estrutura HTML com uma tabela e uma classe CSS que vamos adicionar as linhas pares, e por fim o código JavaScript que será escrito com a sintaxe da biblioteca jQuery.</p>
<p><strong>CSS</strong></p>
<p>Caso você queira deixar as coisas mais bonitas e elegantes, acrescente mais regras aqui no CSS.</p>
<pre><code>
.par{background:#eee}
</code></pre>
<p><strong>HTML</strong></p>
<p>Uma estrutura de tabela bem simples e sem semântica, caso você vá aplicar isso ao seu projeto, veja a possibilidade de escrever a tabela o mais semântico possível, utilizando as tags thead, tbody etc&#8230;</p>
<pre><code>
&lt;table&gt;
    &lt;tr&gt;
        &lt;td&gt;elemento 1 da primeira linha&lt;/td&gt;
        &lt;td&gt;elemento 2 da primeira linha&lt;/td&gt;
        &lt;td&gt;elemento 3 da primeira linha&lt;/td&gt;
        &lt;td&gt;elemento 4 da primeira linha&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
    &lt;td&gt;elemento 1 da segunda linha&lt;/td&gt;
        &lt;td&gt;elemento 2 da segunda linha&lt;/td&gt;
        &lt;td&gt;elemento 3 da segunda linha&lt;/td&gt;
        &lt;td&gt;elemento 4 da segunda linha&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;elemento 1 da terceira linha&lt;/td&gt;
        &lt;td&gt;elemento 2 da terceira linha&lt;/td&gt;
        &lt;td&gt;elemento 3 da terceira linha&lt;/td&gt;
        &lt;td&gt;elemento 4 da terceira linha&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
        &lt;td&gt;elemento 1 da quarta linha&lt;/td&gt;
        &lt;td&gt;elemento 2 da quarta linha&lt;/td&gt;
        &lt;td&gt;elemento 3 da quarta linha&lt;/td&gt;
        &lt;td&gt;elemento 4 da quarta linha&lt;/td&gt;
    &lt;/tr&gt;
&lt;/table&gt;
</code></pre>
<p><strong>jQuery</strong></p>
<p>Agora vamos dar ação com o código javaScript&#8230;</p>
<pre><code>
$(document).ready(function(){

    $('table tr:even').addClass('par');

});
</code></pre>
<p>Na linha 4 utilizamos o seletor &#8220;even&#8221; que é responsável por identificar quais são os elementos pares que ficam na estrutura do DOM, e adicionamos a classe &#8220;par&#8221;. Essa técnica funciona em todos os browsers que tem suporte ao jQuery.</p>
<p>Caso você queira modificar os elementos impar, utilize no lugar do even o &#8220;odd&#8221;. Esses seletores servem não somente para elementos table, mas funcionam bem em listas, divs, parágrafos e vários outros elementos.</p>
<p>Como podemos ver, com a sintaxe do jQuery não passamos de uma linha para fazer esse efeito tão gracioso que é amplamente utilizado em projetos.</p>
<p>Não deixe de conhecer a <a href="http://api.jquery.com/category/selectors/ " target="_blank">documentação oficial do jQuery para seletores</a>, tem a descrição destes e de vários outros seletores que deixam a nossa vida mais simples!</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 932px; width: 1px; height: 1px; overflow: hidden;">even</div>
]]></content:encoded>
			<wfw:commentRss>http://www.felipealbuquerque.com/2010/11/17/efeito-de-zebrar-tabelas-com-jquery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>jQuery menu drop down com apenas 6 linhas</title>
		<link>http://www.felipealbuquerque.com/2010/10/01/jquery-menu-drop-down-com-apenas-6-linhas/</link>
		<comments>http://www.felipealbuquerque.com/2010/10/01/jquery-menu-drop-down-com-apenas-6-linhas/#comments</comments>
		<pubDate>Fri, 01 Oct 2010 14:28:58 +0000</pubDate>
		<dc:creator>Felipe de Albuquerque</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[javaScript]]></category>
		<category><![CDATA[Menu dropDown]]></category>

		<guid isPermaLink="false">http://www.felipealbuquerque.com/?p=554</guid>
		<description><![CDATA[Hoje tentaremos fazer jus ao slogan da biblioteca jQuery “Write less, do more” e faremos um menu drop down, com apenas 6 linhas de código JavaScript. Algumas explicações prévias: Ha algum tempo atrás, publiquei um post sobre como fazer um menu com jQuery, utilizando um método de evento do mouse (hover). Usaremos o mesmo método,]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/MenuComjQuery.jpg"><img class="aligncenter size-full wp-image-478" title="Menu Com jQuery" src="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/MenuComjQuery.jpg" alt="" width="640" height="159" /></a><br />
Hoje tentaremos fazer jus ao slogan da biblioteca jQuery “Write less, do more” e faremos um menu drop down, com apenas 6 linhas de código JavaScript.</p>
<p><strong>Algumas explicações prévias:</strong></p>
<p>Ha algum tempo atrás, publiquei um post sobre como fazer um menu com jQuery, utilizando um método de evento do mouse (hover). Usaremos o mesmo método, mas de uma forma um pouco diferente. Por padrão o metodo .over(), espera duas funções como argumentos, uma para quando o mouse estiver em cima (over) e outra quando o mouse sair do ponto (out).  Neste menu utilizaremos o encadeamento de métodos do jQuery e solucionaremos com apenas uma função, utilizando o sliderToggle().</p>
<p><strong>HTML</strong></p>
<p>A estrutura HTML é bem simples. É uma &lt;ul&gt; com seus nós filhos &lt;li&gt;´s. Filiaremos os sub-menus, que também são estrutura de &lt;ul&gt; e &lt;li&gt;,  para fazer o nosso menu com sub-nível. O interessante é aprender o conceito, depois disto você poderá fazer a estrutura de várias formas e manipular DOM através do jQuery.</p>
<pre><code>&lt;ul&gt;
    &lt;li&gt;&lt;a href='#'&gt;Item um&lt;/a&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item um / um&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item um / dois&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item um / três&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item um / quatro&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href='#'&gt;Item dois&lt;/a&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item dois / um&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item dois / dois&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item dois / três&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item dois / quatro&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;a href='#'&gt;Item três&lt;/a&gt;
        &lt;ul&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item três / um&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item três / dois&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item três / três&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href='#'&gt;Sub-Item três / quatro&lt;/a&gt;&lt;/li&gt;
        &lt;/ul&gt;
    &lt;/li&gt;
   &lt;li&gt;&lt;a href='#'&gt;Item quatro&lt;/a&gt;
       &lt;ul&gt;
           &lt;li&gt;&lt;a href='#'&gt;Sub-Item quatro / um&lt;/a&gt;&lt;/li&gt;
           &lt;li&gt;&lt;a href='#'&gt;Sub-Item quatro / dois&lt;/a&gt;&lt;/li&gt;
           &lt;li&gt;&lt;a href='#'&gt;Sub-Item quatro / três&lt;/a&gt;&lt;/li&gt;
           &lt;li&gt;&lt;a href='#'&gt;Sub-Item quatro / quatro&lt;/a&gt;&lt;/li&gt;
       &lt;/ul&gt;
   &lt;/li&gt;
&lt;/ul&gt;</code></pre>
<p>O comportamento visual desta estrutura pode e deve ser feito com CSS, para deixar o menu mais atrativo. Não vou abordar css, pois não é o sentido deste post. O comportamento visual fica por sua conta e imaginação!</p>
<p><strong>jQuery</strong></p>
<p>A solução em 6 linhas:</p>
<pre><code>$(document).ready(function(){// quando o DOM estiver pronto execute
    $('li ul').hide();// Esconda os menus filhos de &lt;li&gt;
    $('li').hover(function(){// quando passar o mouse em cima da &lt;li&gt;
        $(this).find('ul:first').stop(true, true).slideToggle();// procure nesta li a primeira ul, se um evento estiver disparado ele para(.stop()) e alterne o slider.
    });
});</code></pre>
<p>A solução é bem simples. Eu digo com as palavras do jQuery que quando o documento tiver pronto &#8220;DOM todo lido e carregado pelo browser&#8221; (.ready), execute as tarefas abaixo. Primeiro esconda as ul´s filas de li,  e espere o evento do mouse (.hover), se alguém passar ponteiro do mouse em cima de alguma li, dispara a ação &#8220;o evento&#8221; para procurar nesta li que o mouse passou em cima, a primeira ul e, alterne o comportamento dela entre slide down e up, tornando o sub menu visível e não visível.</p>
<p>O (.stop()) é para corrigir o comportamento do .hover() que coloca os eventos na fila, e fica mostrando e escondendo, caso o usuários passe o mouse diversas vezes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.felipealbuquerque.com/2010/10/01/jquery-menu-drop-down-com-apenas-6-linhas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Menu Drop Down com jQuery</title>
		<link>http://www.felipealbuquerque.com/2010/03/25/menu-drop-down-com-jquery/</link>
		<comments>http://www.felipealbuquerque.com/2010/03/25/menu-drop-down-com-jquery/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 18:48:48 +0000</pubDate>
		<dc:creator>Felipe de Albuquerque</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[javaScript]]></category>
		<category><![CDATA[Menu dropDown]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.felipealbuquerque.com/?p=448</guid>
		<description><![CDATA[Vou descrever um menu drop down feito com XHTML, CSS e jQuery que ficará assim. É muito simples e os arquivos estão aqui. Este menu irá utilizar um método de evento do mouse &#8220;hover&#8221; e não permite navegação através de teclado, por tantanto ele não é acessível, mas caso seu objetivo seja um menu inclusivo]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-478" title="Menu Com jQuery" src="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/MenuComjQuery.jpg" alt="Menu Com jQuery" width="640" height="159" /><br />
Vou descrever um menu drop down feito com XHTML, CSS e jQuery que <a title="Ver o menu funcionando" href="../downloads/Menu-Drop-Down-com-jQuery-FelipeAlbuquerque" target="_blank">ficará assim.</a><br />
É muito simples e <a title="Baixar os arquivos do menu" href="../downloads/Menu-Drop-Down-com-jQuery-FelipeAlbuquerque.rar" target="_blank">os  arquivos estão aqui.</a></p>
<p>Este menu irá utilizar um método de evento do mouse &#8220;<a title="Ler a referência no  site oficial do jQuery" href="http://api.jquery.com/hover/" target="_blank">hover</a>&#8221; e não permite navegação através de teclado, por tantanto ele não é acessível, mas caso seu objetivo seja um menu inclusivo leia um outro post onde eu descrevo um <a title="Ler o post sobre menu acessível" href="http://www.felipealbuquerque.com/2009/10/19/menu-drop-down-acessivel/" target="_self">menu drop down acessível</a>.</p>
<p>Primeiro vou criar o documento de marcação para o menu, que no caso será o XHTML.</p>
<pre><code>
&lt;div id="menu"&gt;&lt;span&gt;&lt;/span&gt;
   &lt;ul&gt;
      &lt;li&gt;&lt;a href="#"&gt;Item 1&lt;/a&gt;
         &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 3&lt;/a&gt;&lt;/li&gt;
         &lt;/ul&gt;
      &lt;/li&gt;
      &lt;li&gt;&lt;a href="#"&gt;Item 2&lt;/a&gt;
         &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 3&lt;/a&gt;&lt;/li&gt;
         &lt;/ul&gt;
      &lt;/li&gt;
      &lt;li&gt;&lt;a href="#"&gt;Item 3&lt;/a&gt;
         &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 3&lt;/a&gt;&lt;/li&gt;
         &lt;/ul&gt;
      &lt;/li&gt;
      &lt;li&gt;&lt;a href="#"&gt;Item 4&lt;/a&gt;
         &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 3&lt;/a&gt;&lt;/li&gt;
         &lt;/ul&gt;
      &lt;/li&gt;
      &lt;li&gt;&lt;a href="#"&gt;Item 5&lt;/a&gt;
         &lt;ul&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 1&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 2&lt;/a&gt;&lt;/li&gt;
            &lt;li&gt;&lt;a href="#"&gt;sub 3&lt;/a&gt;&lt;/li&gt;
         &lt;/ul&gt;
      &lt;/li&gt;
   &lt;/ul&gt;
&lt;span class="right"&gt;&lt;/span&gt;&lt;/div&gt;
</code></pre>
<p>Agora que os nós do menu estão feitos,  formato ele utilizando CSS.</p>
<pre><code>*{margin:0;padding:0}<span>//um reset básico, pra gente poder controlar melhor a página</span>
<span>//Os códigos CSS a baixo podem variar bastante, depende da sua necessidade e criatividade</span>
#menu{background:url(../Images/bg-menu.jpg) repeat-x; height:37px; width:80%; margin:20px auto}
#menu span{height:37px; width:5px; background:url(../Images/bg-menu-esq.jpg) no-repeat; float:left;}
#menu span.right{background:url(../Images/bg-menu-dir.jpg) no-repeat; float:right;}
#menu ul{position:relative;z-index:2;}
#menu li{float:left; list-style:none; display:inline;}
#menu a{text-decoration:none;display:block; font-size:12px; font-family:Arial;color:#000; padding:10px;}
#menu a:hover{text-decoration:none}
#menu ul li ul{position:absolute;z-index:1;background:#f5f8fd url(../Images/bg-sub-menu.jpg) repeat-x !important;border:1px solid #cfd7ea;border-top:none;
	-moz-border-radius-bottomleft:5px;-moz-border-radius-bottomright:5px;
	-webkit-border-bottom-left-radius:5px;-webkit-border-bottom-right-radius:5px;}
#menu ul li ul li{float:none;display:block;padding:0 10px !important; border-top:1px solid #dbe2ec;}
#menu ul li ul li:hover{background:#e2ecf8;color:#26156E;}

</code></pre>
<p>Agora vamos ao que interessa, o jQuery</p>
<pre><code>
<span>/**
 * @author Felipe
 *Se for usar me avisa e comenta o post <img src='http://www.felipealbuquerque.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />
 */
</span>
$(document).ready(function(){

    $("ul li ul").hide();<span>//aqui eu escondo as ul´s que forem filhas de li.</span>
    $("ul li").hover(function(){<span>//O método hover recebe dois parametros que são duas funções.</span>
        $(this).find("ul:first").slideDown("slow"); <span>//aqui você faz o que quiser quando o mouse estiver em cima</span>

    }, function(){
        $(this).find("ul:first").slideUp("slow"); <span>//aqui é como se fosse o callback e você também faz o que quiser.</span></code></pre>
<p>O jQuery como você pode ver, é o arquivo mais simples e com poucas linhas de código.</p>
<p>Utilizamos o método hover que recebe dois parâmetros, que é referente a dois estados do mouse, o mouse hover e mouse down.  Em jQuery esse método pode receber duas funções como parâmetros, que é o que fizemos e após eu utilizo o <em>this</em> pra referenciar ao elemento que está sendo acionado e com o <a title="Ler a referência no site oficial do jQuery" href="http://api.jquery.com/find/" target="_blank"><em>find</em></a> peço pra ele procurar naquele elemento o elemento filho, no caso o primeiro ul que existir e por fim faço o <a title="Ler a referência no site oficial do jQuery" href="http://api.jquery.com/slideDown/" target="_blank">slideDown</a> e Up.<br />
Escolhi esconder o ul filho de li “o sub-menu” com o jQuery, por que se o javaScript estiver desabilitado ou por algum motivo não estiver funcionando, o usuário poderá ver o menu pois ele ficará aberto, se você optar em esconder o menu inicialmente com o CSS o seu menu poderá ficar inutilizável.</p>
<p>Essa foi uma demonstração de um menu simples e bem interessante, porém o jQuery tem plugns incríveis e se você quiser implementar um super menu, você poderá instalar algum plugin, como alguns que vou listar.</p>
<ul>
<li><a title="Ir ao site do plugin, superfish" href="http://users.tpg.com.au/j_birch/plugins/superfish/#examples" target="_blank">Superfish</a></li>
<li><a title="Ir ao site do plugin" href="http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu/" target="_blank">iPod-style Drilldown Menu</a></li>
<li><a title="Ir a página de plugins do jQuery" href="http://plugins.jquery.com/project/Plugins/category/44" target="_self">Plugins de menu no site do jQuery</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.felipealbuquerque.com/2010/03/25/menu-drop-down-com-jquery/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Brincando com jQuery</title>
		<link>http://www.felipealbuquerque.com/2010/03/16/brincando-com-jquery/</link>
		<comments>http://www.felipealbuquerque.com/2010/03/16/brincando-com-jquery/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 20:39:06 +0000</pubDate>
		<dc:creator>Felipe de Albuquerque</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[javaScript]]></category>

		<guid isPermaLink="false">http://www.felipealbuquerque.com/?p=397</guid>
		<description><![CDATA[Quem nunca ouviu falar em jQuery?! É uma biblioteca de javaScript que foi feita para simplificar e otimizar a produção no desenvolvimento web, como o próprio slogan do jQuery diz “write less, do more ” faça mais escrevendo menos. Não se trata de uma nova tecnologia, é apenas javaScript assim como mootools e prototype, uma]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-427 aligncenter" title="BrincandoComjQuery" src="http://www.felipealbuquerque.com/wp-content/uploads/2010/03/BrincandoComjQuery.jpg" alt="Brincando com jQuery" /><br />
Quem nunca ouviu falar em jQuery?!<br />
É uma biblioteca de javaScript que foi feita para simplificar e otimizar a produção no desenvolvimento web, como o próprio slogan do jQuery diz “write less, do more ” faça mais escrevendo menos.</p>
<p>Não se trata de uma nova tecnologia, é apenas javaScript assim como mootools e prototype, uma das grandes vantagens em optar por jQuery é a documentação disponível no site oficial, que é bastante completa e os artigos encontrados em fóruns e blogs espalhados na web.</p>
<p>Neste post em especifico eu vou brincar um pouco com o jQuery pra gente sentir um pouco da biblioteca dos deuses.</p>
<p>O primeiro passo é <a title="Ir a página de downloads do jQuery" href="http://docs.jquery.com/Downloading_jQuery" target="_blank">baixar a biblioteca no site oficial</a>, depois chame a biblioteca entre a tag &lt;head&gt; da página que você irá usar as funções do jQuery.</p>
<p><strong>Deverá ficar algo assim:</strong></p>
<pre><code>
&lt;head&gt;

&lt;title&gt;Brincando com jQuery&lt;/title&gt;

&lt;script type="text/javascript" src="js/jquery.js"&gt;&lt;/script&gt;<span>//js = pasta onde ficará seus arquivos javaScript, isso é você que escolhe onde ficaram os arquivos e o jquery.js é a biblioteca</span>

&lt;/head&gt;</code></pre>
<p><strong>Agora vamos testar se a biblioteca está instalada corretamente: </strong></p>
<pre><code>
&lt;script type="text/javascript"&gt;

$(document).ready(
<span>//Aqui você faz o que quiser útilizando a sintax jQuery ou javaScript puro</span>
function(){
       alert("O jQuery está funcionando e a brincadeira já pode começar!!!");<span>//alert comum com a sintax javaScript</span>

});

&lt;/script&gt;

</code></pre>
<p>Este código espera a página ficar pronta “toda carregada” e após executa uma função que é apenas um alerta normal, com a sintaxe javaScript. Se ao carregar a página com este código e apresentar um alert é porque o jQuery está funcionando e a sua página já compreende a sintaxe jQuery e os métodos e funcionalidades podem ser usadas e isso significa que a brincadeira vai começar a ficar bom agora!</p>
<p>Mas se não funcionou é importante verificar se o caminho que você está chamando está correto ou se há alguma tag escrita incorreta ou sem fechamento, mas de qualquer maneira vou disponibilizar todo código citado aqui.</p>
<p><strong>Uma piada ao getElementById()</strong></p>
<p>O getElementById ficou famoso com a difusão da API DOM e é sem dúvidas um dos métodos mais usados, mas imagina digitar tudo isso umas vinte ou trinta vezes, e em casos extremos, que é necessário chamar esse método várias vezes, me dá tendinite só de pensar, mas com o jQuery isso é tão simples que se torna ridículo, uma verdadeira piada, foi uma das coisas que me chamou a atenção quando eu comecei com o jQuery, isso tudo se resume a “$();”,  $(“id desejado, e não só o id, mas os seletores e classes”), vamos aos exemplos para compreendermos melhor:</p>
<p>O método puro</p>
<pre><code>
<span>Com JavaScript utilizando a API DOM</span>
document.getElementById();
<span>Com a biblioteca dos Deuses</span>
$();
</code></pre>
<p>Manipulando CSS com jQuery</p>
<pre><code>

	$("#meuId").css("color", "red");

</code></pre>
<p>Os elementos de texto que estiverem dentro do id &#8220;meuId&#8221; ficaram com a cor vermelho.</p>
<p>Manipular CSS com a sintaxe de javaScript ficaria algo assim:</p>
<pre><code>
<span>Forma muito usada </span>
      var n = document.getElementById("meuId");
       n.style.color = "red";

<span>Forma otimizada</span>
       document.getElementById("meuId").style.color = "red";

</code></pre>
<p>Os três exemplos fazem a mesma coisa, deixa os elementos de texto do meuid na cor vermelha.</p>
<p><strong>Brincando de pic esconde</strong></p>
<p>Ocultar e mostrar elementos sempre foi algo útil, tanto pra criar sub-menus e tudo que a necessidade do seu cliente mandar.</p>
<p>Fazer isso com jQuery é muito fácil e tem algumas formas interessantes, vamos ver um delas:</p>
<pre><code>
$(document).ready(function(){

	$("#meuId").click(function(){
		$("p").toggle("slow");

	});

});

</code></pre>
<p>HTML</p>
<pre><code>

&lt;body&gt;

 &lt;span id="#meuId"&gt;Clique me!!!&lt;/span&gt; 

         &lt;p&gt;paragrafo 1&lt;/p&gt;

         &lt;p&gt;paragrafo 2&lt;/p&gt;

&lt;/body&gt;

</code></pre>
<p><strong>Ajax virou brincadeira de criança</strong></p>
<p>Para usar o Ajax normalmente é necessário usar uma receitinha de bolo para inicializar o objeto XMLHTTPRequest e ainda por cima fazer um IF se for o IE pra ativar o ActveX, pra funcionar em ambos ou browsers, mas com o jQuery virou outra maravilhosa piada:</p>
<p>Ajax com javaScript</p>
<pre><code>
var Ajax = false;// Ajax

	function AjaxRequest() {
		Ajax = false;
		if (window.XMLHttpRequest) {//Mozilla e safari
			Ajax = new XMLHttpRequest();
		} else if (window.ActiveXObject) {// IE
			try{
				Ajax = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try{
					Ajax = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {

				}
			}

		}
	}
</code></pre>
<p>Ajax com jQuery</p>
<pre style="text-align: center;"><code>
$("#idOndeVaiCarregar").load("pagina.php", callback);
</code></pre>
<p>Acredito que já deu pra brincar um pouco e espero que a leitura tenha sido proveitosa.</p>
<p>As melhores <a title="ler a documentação oficial" href="http://docs.jquery.com/Main_Page">referências de jQuery você poderá achar no site oficial</a>, vale a pena conferir e estudar</p>
]]></content:encoded>
			<wfw:commentRss>http://www.felipealbuquerque.com/2010/03/16/brincando-com-jquery/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Contar caracteres com javaScript</title>
		<link>http://www.felipealbuquerque.com/2009/09/30/contar-caracteres-com-javascript/</link>
		<comments>http://www.felipealbuquerque.com/2009/09/30/contar-caracteres-com-javascript/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 18:02:33 +0000</pubDate>
		<dc:creator>Felipe de Albuquerque</dc:creator>
				<category><![CDATA[javaScript]]></category>

		<guid isPermaLink="false">http://www.felipealbuquerque.com/?p=134</guid>
		<description><![CDATA[Existe uma propriedade nativa do JavaScript chamada length que tem a função de contar. A sintaxe é muito fácil “String.length” onde string é o objeto que queremos contar e o length é quem se encarregará pela contagem. Obs: está propriedade também conta espaço em branco. Muito bom pra verificar se a senha foi digitada com]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-144" title="javaScript" src="http://www.felipealbuquerque.com/wp-content/uploads/2009/09/javascript.jpg" alt="javaScript"  width="640" height="246" /><br />
Existe uma propriedade nativa do JavaScript chamada length que tem a função de contar.</p>
<p>A sintaxe é muito fácil “String.length” onde string é o objeto que queremos contar e o length é quem se encarregará pela contagem.</p>
<p>Obs: está propriedade também conta espaço em branco. Muito bom pra verificar se a senha foi digitada com espaço em branco.</p>
<p>Vamos ver um exemplo simples.</p>
<pre><code>
&lt;script type="text/javascript" language="javascript"&gt;

   var caracteres = "Felipe não sabe de tudo, mas aprende um pouco a cada dia";

   var contar = caracteres.length;

   alert(contar);

&lt;/script&gt;
</code></pre>
<p>O resultado será um alert com o numero 56, contando com os espaços em branco, que ele interpreta como caracteres.</p>
<p>Agora eu quero que o nosso código varra a variável, e teste se existe a letra “e”, se achar vai informar que achou a letra “e”, senão ele vai dizer que não achou “e”,  e vai mostrar o caractere que achou.</p>
<pre><code>
&lt;script type="text/javascript" language="javascript"&gt;

 var caracteres = "Felipe";

     for(i=0; i&lt; caracteres.length; i++){

        if(caracteres[i] == "e" || caracteres[i] == "E" ){

           alert("Achei o " + caracteres[i]);

        } else {

           alert("Não achei e, encontrei o " + caracteres[i]);

        }

     }

&lt;/script&gt;

</code></pre>
<p>O resultado será uma serie de alerts até a condição ser satisfeita, e todos os caracteres serão contados e testados.</p>
<p>O ideal é trabalhar com DOM, e escrever no documento ao invés de alerts, mas como estamos apenas estudando a propriedade length, escolhi alert, mas você pode escolher um nó ou id do documento e escrever nele, Ex: screver = document.getElementById(&#8220;idOndeVoceQuerEscrever&#8221;).innerHTML = variável + “texto e tags”;</p>
<p>Mas isso é para próximos posts.</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 729px; width: 1px; height: 1px;">|| caracteres[i] == E&#8221;</div>
]]></content:encoded>
			<wfw:commentRss>http://www.felipealbuquerque.com/2009/09/30/contar-caracteres-com-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

