<?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>Danilo Trindade &#187; Javascript</title>
	<atom:link href="http://danilotrindade.com.br/category/javascript-scripts/feed/" rel="self" type="application/rss+xml" />
	<link>http://danilotrindade.com.br</link>
	<description>Javascript, Php e o que der na telha...</description>
	<lastBuildDate>Wed, 15 Dec 2010 13:15:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Caça palavras em Javascript</title>
		<link>http://danilotrindade.com.br/caca-palavras-em-javascript/</link>
		<comments>http://danilotrindade.com.br/caca-palavras-em-javascript/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 15:24:40 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[DHTML]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidade pública]]></category>
		<category><![CDATA[Caça Palavras]]></category>
		<category><![CDATA[javacriot]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Supernatural]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=123</guid>
		<description><![CDATA[Olá,
Esses dias minha querida namorada me mandou um link de um caça palavras do Supernatural e só depois fui ver que tinha sido feito com o meu querido Javascript :), muito bom diga-se de passagem!
Foi feito com jQuery e a idéia ficou muito boa. Você também tem a possibilidade de criar seu próprio caça palavras [...]]]></description>
			<content:encoded><![CDATA[<p>Olá,</p>
<p>Esses dias minha querida namorada me mandou um link de um caça palavras do <em><strong><a class="wpGallery" href="http://supernatural.warnerbros.com/">Supernatural</a></strong></em> e só depois fui ver que tinha sido feito com o meu querido Javascript :), muito bom diga-se de passagem!</p>
<p>Foi feito com <strong><em><a class="wpGallery" href="http://jquery.com">jQuery</a></em></strong> e a idéia ficou muito boa. Você também tem a possibilidade de criar seu próprio caça palavras mandando as informações para eles.</p>
<p>Visitem, é muito bacana.</p>
<p><strong><a class="wpGallery" href="http://www.cacapalavras.com.br/series-de-tv/supernatural/">Caça Palavras do Supernatural</a></strong></p>
<p>Abs,</p>
<p>Chapoo!</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/caca-palavras-em-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Classe estática &#8220;Fade in&#8221; e &#8220;Fade out&#8221;</title>
		<link>http://danilotrindade.com.br/classe-estatica-fade-in-e-fade-out/</link>
		<comments>http://danilotrindade.com.br/classe-estatica-fade-in-e-fade-out/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 21:17:41 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[DHTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Orientação a objetos]]></category>
		<category><![CDATA[Animação]]></category>
		<category><![CDATA[Classe Estática]]></category>
		<category><![CDATA[Classes]]></category>
		<category><![CDATA[Exemplo]]></category>
		<category><![CDATA[Fade]]></category>
		<category><![CDATA[Fade in]]></category>
		<category><![CDATA[Fade out]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[Lógica]]></category>
		<category><![CDATA[Objetos]]></category>
		<category><![CDATA[Orientado]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=119</guid>
		<description><![CDATA[Usar jQuery para agilizar o trabalho é bacana, mas no trabalho, não é verdade?
Eu prefiro saber como foi feito ou no meu caso fazer a lógica &#8220;do zero&#8221; e fazer do meu jeito.
Estou disponibilizando uma classe estática que faz Fade in e Fade out de objetos HTML para ser usada, entendida, melhorada e porque não [...]]]></description>
			<content:encoded><![CDATA[<p>Usar <a class="wpGallery" title="Biblioteca JQuery" href="http://jquery.com"><strong><em>jQuery</em></strong></a> para agilizar o trabalho é bacana, mas no trabalho, não é verdade?</p>
<p>Eu prefiro saber como foi feito ou no meu caso fazer a lógica &#8220;do zero&#8221; e fazer do meu jeito.</p>
<p>Estou disponibilizando uma classe estática que faz <em><strong>Fade in</strong></em> e <strong><em>Fade out</em></strong> de objetos <strong>HTML</strong> para ser usada, entendida, melhorada e porque não criticada?</p>
<p>Podem Ficar a vontade, testem e quaisquer dúvidas comentem.</p>
<p><strong>Baixe o exemplo:</strong></p>
<p><a class="wpGallery" title="Exemplo Fade - Formato ZIP" href="http://danilo.blog.br/scripts/js/util/fade.zip">Fade (ZIP)</a> ou <a title="Exemplo Fade - Formato RAR" href="http://danilo.blog.br/scripts/js/util/fade.rar">Fade (RAR)</a></p>
<p>Abs,<br />
Chapooo!</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/classe-estatica-fade-in-e-fade-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fazer validação de CNPJ em formulários</title>
		<link>http://danilotrindade.com.br/fazer-validacao-de-cnpj-em-formularios/</link>
		<comments>http://danilotrindade.com.br/fazer-validacao-de-cnpj-em-formularios/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 13:29:13 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidade pública]]></category>
		<category><![CDATA[CNPJ]]></category>
		<category><![CDATA[Exemplo]]></category>
		<category><![CDATA[Ferramentas]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[Formulários]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[Servidor]]></category>
		<category><![CDATA[Validação]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=74</guid>
		<description><![CDATA[Fazer validações de campos de formulários em Javascript hoje em dia é muito arriscado. Com o Firebug e essas ferramentas de &#8220;Web Desenvolvedor&#8221; faz com que qualquer um que tenha um pouco mais de conhecimento burle essas validações. Para resolver este problema é recomendado fazer tais validações no servidor, ex: No Php.
Só que &#8220;tentar&#8221; validar [...]]]></description>
			<content:encoded><![CDATA[<p>Fazer validações de campos de formulários em Javascript hoje em dia é muito arriscado. Com o <a title="Firebug" href="https://addons.mozilla.org/pt-BR/firefox/addon/1843"><em><strong>Firebug</strong></em></a> e essas ferramentas de &#8220;Web Desenvolvedor&#8221; faz com que qualquer um que tenha um pouco mais de conhecimento burle essas validações. Para resolver este problema é recomendado fazer tais validações no servidor, ex: No <a title="Php.net" href="http://php.net"><strong>Php</strong></a>.</p>
<p>Só que &#8220;tentar&#8221; validar não faz mal a ninguém por isso vou disponibilizar por aqui um script em Javascript de validação de CNPJ que pode ser usado para uma validação preventiva no seu formulário.</p>
<p>O script não é de autoria própria e estou colocando apenas para oferecer ajuda a quem precisar validar um CNPJ.</p>
<p>Baixar o exemplo: <a title="Validação CNPJ" href="http://danilotrindade.com.br/scripts/js/util/validacao-cnpj.zip">Validação CNJP</a></p>
<p>Espero que ajude!</p>
<p>Abs,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/fazer-validacao-de-cnpj-em-formularios/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Jogos em Javascript (DHTML)</title>
		<link>http://danilotrindade.com.br/jogos-em-javascript-dhtml/</link>
		<comments>http://danilotrindade.com.br/jogos-em-javascript-dhtml/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 16:15:59 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[DHTML]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[Criatividade]]></category>
		<category><![CDATA[Diversão]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Jogos]]></category>
		<category><![CDATA[Joguinhos]]></category>
		<category><![CDATA[Programar]]></category>
		<category><![CDATA[Site]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=70</guid>
		<description><![CDATA[Caros,
Muita gente diz que não gosta de Javascript porque sempre passa nervoso :p, mas quem gosta de verdade se diverte com ele. Falando em diversão&#8230; pra quem não gosta de programar, que tal jogar os joguinhos feitos em Javacript (DHTML)? É isso mesmo vejam a criatividade e divirtam-se com os joguinhos feitos em Javascript do [...]]]></description>
			<content:encoded><![CDATA[<p>Caros,</p>
<p>Muita gente diz que não gosta de Javascript porque sempre passa nervoso :p, mas quem gosta de verdade se diverte com ele. Falando em diversão&#8230; pra quem não gosta de programar, que tal jogar os joguinhos feitos em Javacript (DHTML)? É isso mesmo vejam a criatividade e divirtam-se com os joguinhos feitos em Javascript do site <strong><a title="Dinamic Drive - Jogos em Javascript (DHTML)" href="http://www.dynamicdrive.com/dynamicindex12/index.html" target="_blank">Dinamic Drive</a></strong>.</p>
<p>Quem sabe não inspira você a criar alguns, hein?</p>
<p>Abs.,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/jogos-em-javascript-dhtml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Executar javascript dentro do PHP</title>
		<link>http://danilotrindade.com.br/executar-javascript-dentro-do-php/</link>
		<comments>http://danilotrindade.com.br/executar-javascript-dentro-do-php/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 15:05:48 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidade pública]]></category>
		<category><![CDATA[Php]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=59</guid>
		<description><![CDATA[Caros,
Só para tirar a dúvida de algumas pessoas vou mostrar como é fácil &#8220;executar&#8221; javascript no php, mas para ficar bem claro o Php apenas irá escrever o código e o navagador faz o resto! Não podemos falar que o php se comunica com o javascript.
Bom, vamos lá! Para exemplificar, você pode no seu código [...]]]></description>
			<content:encoded><![CDATA[<p>Caros,</p>
<p>Só para tirar a dúvida de algumas pessoas vou mostrar como é fácil &#8220;executar&#8221; javascript no php, mas para ficar bem claro o Php apenas irá escrever o código e o navagador faz o resto! Não podemos falar que o php se comunica com o javascript.</p>
<p>Bom, vamos lá! Para exemplificar, você pode no seu código php mandar uma mensagem em javascript para o usuário ao final do seu script, veja:</p>
<pre class="syntax-highlight:html">
echo &quot;&lt;script type=&#039;text/javascript&#039;&gt;&quot;;
echo &quot;    alert(&#039;Sucesso!&#039;);&quot;;
echo &quot;    location.href = &#039;/&#039;; &quot;;
echo &quot; &lt;/script&gt;&quot;;
</pre>
<p>Abs.,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/executar-javascript-dentro-do-php/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Fazer include com Javascript</title>
		<link>http://danilotrindade.com.br/fazer-include-com-javascript/</link>
		<comments>http://danilotrindade.com.br/fazer-include-com-javascript/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 17:15:33 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidade pública]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Arquivos]]></category>
		<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Document.write]]></category>
		<category><![CDATA[Dom]]></category>
		<category><![CDATA[Executar]]></category>
		<category><![CDATA[Exemplo]]></category>
		<category><![CDATA[Formulários]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[Função]]></category>
		<category><![CDATA[Funções]]></category>
		<category><![CDATA[Idéias]]></category>
		<category><![CDATA[Include]]></category>
		<category><![CDATA[Includes]]></category>
		<category><![CDATA[Incluir]]></category>
		<category><![CDATA[Menus animados]]></category>
		<category><![CDATA[Padrão]]></category>
		<category><![CDATA[Página]]></category>
		<category><![CDATA[Problema]]></category>
		<category><![CDATA[Tag]]></category>
		<category><![CDATA[Tempo de execução]]></category>
		<category><![CDATA[Validações]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=49</guid>
		<description><![CDATA[Será que é possível incluir arquivos em uma página via &#8220;include&#8221; de Javascript? Bom&#8230;
Esta é uma discussão que acontece há algum tempo e quando comecei com Javascript sempre fiquei decepcionado com o que encontrei por ai, mas não foi tão ruim como parece, pois pegando todas as idéias me ocorreu uma!
Respondendo a pergunta&#8230; A resposta [...]]]></description>
			<content:encoded><![CDATA[<p>Será que é possível incluir arquivos em uma página via &#8220;include&#8221; de Javascript? Bom&#8230;</p>
<p>Esta é uma discussão que acontece há algum tempo e quando comecei com Javascript sempre fiquei decepcionado com o que encontrei por ai, mas não foi tão ruim como parece, pois pegando todas as idéias me ocorreu uma!</p>
<p>Respondendo a pergunta&#8230; A resposta é sim, é muito fácil incluir um arquivo via &#8220;include&#8221; em Javascript. Podemos usar o <strong>DOM</strong> (exemplo que irei mostrar), Ajax (não gosto!), document.write e etc.</p>
<p>O problema não está na inclusão do arquivo em sua página, você pode fazer diversas funções que adicione um js só que o problema não é este. O que acontece é que quando precisamos executar um script, por exemplo, ao carregar a página e chamar uma função de um desses &#8220;includes&#8221;, vai falhar, pois não conseguem carregar os arquivos em tempo de execução como a tag padrão <strong>SCRIPT</strong> consegue!</p>
<p>Mas dá pra usar? Sim!</p>
<p>Se você quer organizar o seu código e usar uma função que inclua arquivos você pode, mas fique atento aos scripts que você irá incluir. Você pode incluir scripts que contenham validações de formulários, funções de menus animados e etc.</p>
<p>Segue um pacote com o exemplo, <strong><a title="Pacote com teste do Include" href="/scripts/js/util/include.zip">clique aqui para baixar!</a></strong></p>
<p>Mas, lembre-se nunca inclua um arquivo e tente executar suas funções ao mesmo tempo, infelizmente não vai funcionar como esperado (em todos os browsers).</p>
<p><strong>Conclusão:</strong><br />
Use com moderação!</p>
<p>Ah&#8230; Não estou falando de Frameworks talvez eles atendam isso!?</p>
<p>Abs.,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/fazer-include-com-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Por que usar o &#8220;var&#8221; nas declarações de variáveis?</title>
		<link>http://danilotrindade.com.br/por-que-usar-o-var-nas-declaracoes-de-variaveis/</link>
		<comments>http://danilotrindade.com.br/por-que-usar-o-var-nas-declaracoes-de-variaveis/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 15:53:05 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Declarações]]></category>
		<category><![CDATA[Escopo]]></category>
		<category><![CDATA[Função]]></category>
		<category><![CDATA[Global]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Var]]></category>
		<category><![CDATA[Variáveis]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=23</guid>
		<description><![CDATA[Se você sempre se perguntou o motivo de usar a palavra &#8220;var&#8221; nas declarações de variáveis em Javascript agora vão ter uma idéia do porquê.
Quando se referimos a uma variável global (uma variável fora das funções) podemos usar ou não a palavra &#8220;var&#8221;, pois não existe diferença funcional e sim por causa do escopo. Agora [...]]]></description>
			<content:encoded><![CDATA[<p>Se você sempre se perguntou o motivo de usar a palavra &#8220;var&#8221; nas declarações de variáveis em Javascript agora vão ter uma idéia do porquê.</p>
<p>Quando se referimos a uma variável global (uma variável fora das funções) podemos usar ou não a palavra &#8220;var&#8221;, pois não existe diferença funcional e sim por causa do escopo. Agora se você quer utilizar em uma função uma variável com o mesmo nome de outra que já é declarada como global e não declarar com o &#8220;var&#8221; você estará alterando a variável global. Se você quer que o valor da variável seja usada apenas dentro do escopo da sua função, então utilize a palavra &#8220;var&#8221;.</p>
<p><strong>Neste exemplo a função altera o valor da variável global:</strong></p>
<pre class="syntax-highlight:javascript">
&lt;script type=&quot;text/javascript&quot;&gt;
    var variavelGlobal = &#039;Variavel Global&#039;;

    function alteraValor() {
        variavelGlobal = &#039;Variavel Global Alterada&#039;;
    }

    alteraValor();

    alert(variavelGlobal);
&lt;/script&gt;
</pre>
<p><strong>Neste outro a função apenas declara uma variável de mesmo nome, porém é usada apenas no escopo da função:</strong></p>
<pre class="syntax-highlight:javascript">
&lt;script type=&quot;text/javascript&quot;&gt;
    var variavelGlobal = &#039;Variavel Global&#039;;

    function alteraValor() {
        var variavelGlobal = &#039;Variavel Global Alterada&#039;;
    }

    alteraValor();

    alert(variavelGlobal);
&lt;/script&gt;
</pre>
<p>Abs,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/por-que-usar-o-var-nas-declaracoes-de-variaveis/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Como fazer um scroll em php</title>
		<link>http://danilotrindade.com.br/como-fazer-um-scroll-em-php/</link>
		<comments>http://danilotrindade.com.br/como-fazer-um-scroll-em-php/#comments</comments>
		<pubDate>Wed, 13 May 2009 15:22:22 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidade pública]]></category>
		<category><![CDATA[Css]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[Personalizado]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[Rolagem]]></category>
		<category><![CDATA[Scroll]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=20</guid>
		<description><![CDATA[Caros,
Algumas pessoas procuram na internet com fazer um scroll ou uma barra de rolagem e mencionam fazer com o php, está errado!
Gostaria de explicar que o scroll não tem ligação com o php e sim somente com o javascript, no máximo com o css que irá ajudar você a decorar o seu scroll. Segue como [...]]]></description>
			<content:encoded><![CDATA[<p>Caros,</p>
<p>Algumas pessoas procuram na internet com fazer um scroll ou uma barra de rolagem e mencionam fazer com o php, está errado!</p>
<p>Gostaria de explicar que o scroll não tem ligação com o php e sim somente com o javascript, no máximo com o css que irá ajudar você a decorar o seu scroll. Segue como fazer um scroll para html &#8220;<a class="wpGallery" title="Fazendo um scroll personalizado e simples" href="http://danilotrindade.com.br/fazendo-um-scroll-personalizado-e-simples/">Fazendo um scroll personalizado e simples</a>&#8220;.</p>
<p>Dúvidas é só falar!</p>
<p>Abs,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/como-fazer-um-scroll-em-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Classe para Redimensionar Objetos</title>
		<link>http://danilotrindade.com.br/classe-para-redimensionar-objetos/</link>
		<comments>http://danilotrindade.com.br/classe-para-redimensionar-objetos/#comments</comments>
		<pubDate>Wed, 06 May 2009 22:08:04 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Orientação a objetos]]></category>
		<category><![CDATA[Classes]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[Objetos]]></category>
		<category><![CDATA[Redimensionar]]></category>
		<category><![CDATA[Rel]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=17</guid>
		<description><![CDATA[Caros,
Segue uma classe que a muito tempo queria colocar mas por alguns detalhes não tinha como. É uma classe que serve para redimensionar objs html.
Para testar, baixe o arquivo zipado.
Neste script estou usando uma classe estática Rel onde é util para várias outras coisas.
Baixar o arquivo redimensionar
Bom, até mais!
Abs,
Chapoo
]]></description>
			<content:encoded><![CDATA[<p>Caros,</p>
<p>Segue uma classe que a muito tempo queria colocar mas por alguns detalhes não tinha como. É uma classe que serve para redimensionar objs html.</p>
<p>Para testar, baixe o arquivo zipado.</p>
<p>Neste script estou usando uma classe estática <strong>Rel</strong> onde é util para várias outras coisas.</p>
<p>Baixar o arquivo <a title="Redimensionar" href="/scripts/js/util/redimensionar.zip"><strong>redimensionar</strong></a></p>
<p>Bom, até mais!</p>
<p>Abs,<br />
Chapoo</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/classe-para-redimensionar-objetos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Solução alternativa do Delegate</title>
		<link>http://danilotrindade.com.br/solucao-alternativa-do-delegate/</link>
		<comments>http://danilotrindade.com.br/solucao-alternativa-do-delegate/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 13:29:29 +0000</pubDate>
		<dc:creator>Chapolin</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Orientação a objetos]]></category>
		<category><![CDATA[Classes]]></category>
		<category><![CDATA[Contexto]]></category>
		<category><![CDATA[Delegate]]></category>
		<category><![CDATA[Escopo]]></category>
		<category><![CDATA[Função]]></category>
		<category><![CDATA[Objetos]]></category>
		<category><![CDATA[Orientado]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Utilidade pública]]></category>

		<guid isPermaLink="false">http://danilotrindade.com.br/?p=15</guid>
		<description><![CDATA[Em muitos casos que postei aqui e também em situações profissionais usei o Delegate (post anterior) e simplesmente ele resolveu vários problenas quando estava trabalhando com classes e perdia o escopo do objeto em alguns métodos.
A pouco, desenvolvendo uma nova classe, me deparei com um problema chato.
Seguem as Situações:
Tinha numa classe, no método [this.iniciar] um [...]]]></description>
			<content:encoded><![CDATA[<p>Em muitos casos que postei aqui e também em situações profissionais usei o <span style="color: #ffcc00;"><strong><a title="Classe Delegate" href="http://danilotrindade.com.br/classe-delegate/">Delegate</a></strong></span> (post anterior) e simplesmente ele resolveu vários problenas quando estava trabalhando com classes e perdia o escopo do objeto em alguns métodos.</p>
<p>A pouco, desenvolvendo uma nova classe, me deparei com um problema chato.</p>
<p><span style="color: rgb(51, 51, 51);"><strong>Seguem as Situações:</strong></span></p>
<p>Tinha numa classe, no método [this.iniciar] um código que seria executado quando um evento ocorresse, mas ao passar o método para o evento, das duas uma: Ou Conseguia pegar o evento e o escopo era perdido (situação 1) ou tinha o escopo (usando o Delegate) porém não tinha o evento :( (situação 2). Segue abaixo os exemplos:</p>
<p><span style="color: rgb(51, 51, 51);"><strong>Situação 1:</strong></span></p>
<pre class="syntax-highlight:javascript">
...
this.iniciar = function() {
    document.onmousemove = this.verifica;
}

this.verifica = function(e) {
    // Tenho o evento mas não tenho o escopo
}
...
</pre>
<p><span style="color: rgb(51, 51, 51);"><strong>Situação 2:</strong></span></p>
<pre class="syntax-highlight:javascript">
...
this.iniciar = function() {
    document.onmousemove = Delegate.create(this, this.verifica, Array(&#039;&#039;));
}

this.verifica = function(e) {
    // Tenho o escopo mas não tenho o evento
}
...
</pre>
<p><span style="color: rgb(51, 51, 51);"><strong>Consegui resolver o problema da seguinte maneira:</strong></span></p>
<pre class="syntax-highlight:javascript">
NomeDaClasse = function() {
    with(this) {
        ...
        this.iniciar = function() {
            document.onmousemove = this.verifica;
        }

        this.verifica = function(e) {
            // Tenho o evento
            // Tenho o escopo
            teste(); // Não use o this.teste();
        }

        this.teste = function() {
            alert(&#039;Estou no escopo&#039;);
        }
        ...
    }
};
</pre>
<p>Imaginei que usando o with poderia ser uma luz e não acreditei que isso funcionaria até testar!!!</p>
<p><span style="color: rgb(51, 51, 51);"><strong>Obs.:</strong></span><br />
- No exemplo acima, se você usar o [this] dentro do evento, ou seja, dentro do método [this.verifica] você estará no escopo do objeto [document].<br />
- Se você tiver uma função fora da classe com o nome idêntico de algum método da classe não vai dar conflito, porém você não vai acessar a função externa também!</p>
<p>Abs,<br />
Chapooo!</p>
]]></content:encoded>
			<wfw:commentRss>http://danilotrindade.com.br/solucao-alternativa-do-delegate/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

