<?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>Adobe Flash &#187; HTML</title>
	<atom:link href="http://www.adobeflash.es/category/html/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.adobeflash.es</link>
	<description>Adobe Flash :: Agregador de Blogs sobre Adobe Flash y Actionscript en castellano</description>
	<lastBuildDate>Thu, 01 Sep 2011 10:34:50 +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>Como incluir el botón Google +1 en tu Web</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/#comments</comments>
		<pubDate>Sun, 07 Aug 2011 17:22:52 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[1]]></category>
		<category><![CDATA[asincrono]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[redes sociales]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1285</guid>
		<description><![CDATA[<p>El botón <strong>Google +1</strong> es una utilidad de Google que permite a los usuarios marcar como recomendado el contenido de un determinado web. Estas recomendaciones serán mostradas en los resultados de Google y deben ser hechas&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/sHbZFEGOoSE/' rel='bookmark' title='Permanent Link: Optimización: Google Page Speed Online'>Optimización: Google Page Speed Online</a> <small>Page Speed el plugin para Firefox y Chrome que permite...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/Wn8gRImzpg8/' rel='bookmark' title='Permanent Link: Protege tu web del SPAM con PHP y Akismet'>Protege tu web del SPAM con PHP y Akismet</a> <small>Akismet el servicio que filtra los mensajes considerados como SPAM...</small></li>
<li><a href='http://tutorialesadobe.com/videotutorial/crear-boton-fireworks/' rel='bookmark' title='Permanent Link: Crear un botón en Fireworks'>Crear un botón en Fireworks</a> <small>En este video-tutorial mostramos cómo crear un botón en Fireworks....</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/I7acHwbHh39dkCdhNftVgGccwYM/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/I7acHwbHh39dkCdhNftVgGccwYM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/I7acHwbHh39dkCdhNftVgGccwYM/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/I7acHwbHh39dkCdhNftVgGccwYM/1/di" border="0" ismap="true"></img></a></p><p>El botón <strong>Google +1</strong> es una utilidad de Google que permite a los usuarios marcar como recomendado el contenido de un determinado web. Estas recomendaciones serán mostradas en los resultados de Google y deben ser hechas por usuarios con cuentas de Google. De esta manera nuestros visitantes recomendarán a sus amigos nuestro contenido de forma que tendremos una nueva manera de publicitar nuestra web.</p><p><a href="http://www.google.com/webmasters/+1/button/" target="_blank"><img src="http://blog.unijimpe.net/wp-content/uploads/2011/08/google-plus1.jpg" alt="" title="google-plus1" width="500" height="244" /></a></p><p><strong>Generador de Google +1</strong></p><p>Google ofrece una página donde puedes configurar rápidamente el botón +1, obtener el código javascript para colocarlo en tu web. Para ello primero ingresamos a <a href="http://www.google.com/webmasters/+1/button/" target="_blank">http://www.google.com/webmasters/+1/button/</a> donde seleccionamos el tamaño del botón (Small, Medium, Standard, Tall) y el idioma para obtener el código javascript.</p><p>El primer código lo ubican en donde desean se muestre en botón Google +1, pueden ubicar el varios lugares el código para mostrar varias veces el botón.</p><div class="syntax_hilite"><div id="html-4"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;">&lt;g:plusone&gt;</span><span style="color: #009900;"><span style="color: #000000;">&lt;</span></a>/g:plusone&gt;</span></div></li></ol></div></div></div><p></p><p>El siguiente código se pone una sola vez y hay que colocarlo justo antes de la etiqueta <em>&lt;/body&gt;</em>. Este código es la forma asincrona de insertar javascript externo en una web, lo cual hace que primero cargue todos los elementos de la pagina y al final recién se carga el javascript necesario para el funcionamiento del botón +1.</p><div class="syntax_hilite"><div id="html-5"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">&nbsp; (function() {</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; po.src = 'https://apis.google.com/js/plusone.js';</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);</div></li><li style="color:#26536A;"><div style="">&nbsp; })();</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>También es posible utilizar la forma tradicional para llamar al javascript externo, para ello en lugar del código anterior colocaremos el siguiente código en el header de tu HTML.</p><div class="syntax_hilite"><div id="html-6"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"https://apis.google.com/js/plusone.js"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Con lo cual obtenemos el siguiente resultado en nuestra página:</p><p><g:plusone></g:plusone></p><p>Estas son las configuraciones básicas, ahora si necesitas personalizar o integrar aún mas el botón Google +1, puedes leer la documentación en <a href="http://code.google.com/apis/+1button/" target="_blank">Adding the +1 button to your site</a>.</p><p>Como pueden ver utilizar este nuevo botón es sencillo y ayudará a obtener mas visitas a nuestras paginas mediante las recomendaciones de nuestros visitantes a sus contactos.</p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=0A-_RXqFliY:QRoVh9NdDQM:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=0A-_RXqFliY:QRoVh9NdDQM:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=0A-_RXqFliY:QRoVh9NdDQM:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=0A-_RXqFliY:QRoVh9NdDQM:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=0A-_RXqFliY:QRoVh9NdDQM:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/0A-_RXqFliY" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/como-incluir-el-boton-google-1-en-tu-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Depurar Javascript utilizando console.log()</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/#comments</comments>
		<pubDate>Fri, 13 May 2011 05:14:59 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[alert]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[Safari]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1266</guid>
		<description><![CDATA[<p>Tradicionalmente para depurar Javascript se hace uso de la función <em>alert</em> con la cual muestra un texto que contiene el valor de una determinada variable. Pero este método tiene un inconveniente: detiene la ejecución del script&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/c_fAxGbMXm4/' rel='bookmark' title='Permanent Link: Depurar Flash con Firebug'>Depurar Flash con Firebug</a> <small>Depurar flash en el ambiente de desarrollo es sencillo a...</small></li>
<li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/AIqiaIC_Cao/como-depurar-errores-de-actionscript-i' rel='bookmark' title='Permanent Link: Como depurar errores de Actionscript I'>Como depurar errores de Actionscript I</a> <small>Muchas de las preguntas que aparecen en los foros de...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/' rel='bookmark' title='Permanent Link: Como incluir el botón Google +1 en tu Web'>Como incluir el botón Google +1 en tu Web</a> <small>El botón Google +1 es una utilidad de Google que...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/c-G-u2we30wJS5niE-b_AhNFyTo/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/c-G-u2we30wJS5niE-b_AhNFyTo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/c-G-u2we30wJS5niE-b_AhNFyTo/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/c-G-u2we30wJS5niE-b_AhNFyTo/1/di" border="0" ismap="true"></img></a></p><p>Tradicionalmente para depurar Javascript se hace uso de la función <em>alert</em> con la cual muestra un texto que contiene el valor de una determinada variable. Pero este método tiene un inconveniente: detiene la ejecución del script hasta que el usuario acepte esta alerta.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2011/05/console.gif" alt="" title="console" width="520" height="191" class="alignnone size-full wp-image-1267" /></p><p><strong>Javascript Console</strong></p><p><a href="http://www.apple.com/es/safari/" target="_blank">Safari</a> y <a href="http://www.getfirefox.com" target="_blank">Firefox</a> con <a href="http://getfirebug.com" target="_blank">Firebug</a> instalado ofrecen un comando para facilitar la depuración de Javascript, se trata de console el cual imprime el mensaje en el panel de <strong>console</strong> como se muestra en la imagen que acompaña este artículo.</p><p>Existen varios tipos de mensajes que se pueden mostrar:</p><ul><li><code>console.log()</code> muestra un mensaje en la consola.</li><li><code>console.debug()</code> muestra un mensaje y ademas nuestra el número de línea donde se encuentra.</li><li><code>console.warn()</code> muestra un mensaje de alerta con un icono y fondo amarillo para identificarlo.</li><li><code>console.error()</code> muestra un mensaje de error con un icono y fondo en color rojo.</li></ul><p>Para mostrar un mensaje se le pasa la cadena de texto que deseamos imprimir:</p><div class="syntax_hilite"><div id="javascript-48"><div class="javascript"><ol><li style="color:#3A6A8B;"><div style="">console.<span style="color: #006600;">log</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">"-&gt; log"</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">console.<span style="color: #006600;">debug</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'-&gt; debug'</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">console.<span style="color: #006600;">warn</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'-&gt; warm'</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#26536A;"><div style="">console.<span style="color: #006600;">error</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'-&gt; error'</span><span style="color: #66cc66;">&#41;</span>;</div></li></ol></div></div></div><p></p><p>También se pueden pasar mas parámetros al estilo de <em>printf</em> y <em>sprintf</em> de PHP, por ejemplo:</p><div class="syntax_hilite"><div id="javascript-49"><div class="javascript"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #003366;">var</span> total = <span style="color: #CC0000;color:#800000;">12</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color: #003366;">var</span> consulta&nbsp; = <span style="color: #3366CC;">"Google"</span>;</div></li><li style="color:#3A6A8B;"><div style="">console.<span style="color: #006600;">log</span><span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">"Total: %s para '%s'"</span>, total, consulta<span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color: #009900; font-style: italic;">// Total: 12 para 'Google' </span></div></li></ol></div></div></div><p></p><p><strong>Utilizando console.log() en otros Navegadores</strong></p><p>Ya que console solo esta disponible para <em>Safari</em> y <em>Firefox</em> con Firebug, si pruebas tu desarrollo en <em>Internet Explorer</em> u <em>Opera</em> te generará un error puesta la sentencia <code>console.log()</code> no existe. Para ello se ha propuesto en <a href="http://keekimheng.com/2010/09/06/cross-browser-console-logging/" target="_blank">KeeKim</a> un script para reemplazarlo por <code>opera.portError()</code> en el caso de Opera y <code>alert()</code> en el caso de Internet Explorer.</p><div class="syntax_hilite"><div id="javascript-50"><div class="javascript"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #000066;">if</span> <span style="color: #66cc66;">&#40;</span>!window.<span style="color: #006600;">console</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; <span style="color: #003366;">var</span> log = window.<span style="color: #006600;">opera</span> ? window.<span style="color: #006600;">opera</span>.<span style="color: #006600;">postError</span> : <span style="color: #000066;">alert</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; window.<span style="color: #006600;">console</span> = <span style="color: #66cc66;">&#123;</span> log: <span style="color: #003366;">function</span><span style="color: #66cc66;">&#40;</span>str<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> log<span style="color: #66cc66;">&#40;</span>str<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#125;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color: #66cc66;">&#125;</span></div></li></ol></div></div></div><p></p><p><strong>Más Información</strong></p><ul><li><a href="http://getfirebug.com/wiki/index.php/Console_API" target="_blank">Firebug: Console API</a></li><li><a href="http://getfirebug.com/logging" target="_blank">Firebug and Logging</a></li><li><a href="http://keekimheng.com/2010/09/06/cross-browser-console-logging/" target="_blank">Cross-browser Console Logging</a></li><li><a href="http://davidwalsh.name/firebug-console-log" target="_blank">Logging Information to the Firebug JavaScript Console</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2011 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=vr1mN4v9cA0:UvT1-6MSjsA:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=vr1mN4v9cA0:UvT1-6MSjsA:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=vr1mN4v9cA0:UvT1-6MSjsA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=vr1mN4v9cA0:UvT1-6MSjsA:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=vr1mN4v9cA0:UvT1-6MSjsA:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/vr1mN4v9cA0" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/depurar-javascript-utilizando-console-log/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5 para principiantes</title>
		<link>http://www.adobeflash.es/html-5-para-principiantes-20/</link>
		<comments>http://www.adobeflash.es/html-5-para-principiantes-20/#comments</comments>
		<pubDate>Wed, 29 Dec 2010 14:00:45 +0000</pubDate>
		<dc:creator>FlashAdictos</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Videotutorial]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.adobeflash.es/html-5-para-principiantes-20/</guid>
		<description><![CDATA[Hola cómo están hace un tiempo postearon en cristalab&#160;un video tutorial de HTML5, este video es de autoría del diseñador Armando Sosa y bueno el video está genial para todos los que queremos empezar con esta tecnología.

Aquí les dejo el vi...


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/Yfidf8EEA0k/detectar-soporte-para-html5-con-modernizr' rel='bookmark' title='Permanent Link: Detectar soporte para HTML5 con Modernizr'>Detectar soporte para HTML5 con Modernizr</a> <small>Cuando empezamos a trabajar con HTML5, tenemos que tener en...</small></li>
<li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/NEl7h8-Gpw4/detectar-soporte-para-html5-con-modernizr-' rel='bookmark' title='Permanent Link: Detectar soporte para HTML5 con Modernizr'>Detectar soporte para HTML5 con Modernizr</a> <small>Cuando empezamos a trabajar con HTML5, tenemos que tener en...</small></li>
<li><a href='http://www.subflash.com/2011/06/talleres-2011-html5-y-css3-para-movil/' rel='bookmark' title='Permanent Link: Talleres 2011: HTML5 y CSS3 para móvil'>Talleres 2011: HTML5 y CSS3 para móvil</a> <small>Y bueno&#8230; no podíamos tener un Subflash en este 2011...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Hola cómo están hace un tiempo postearon en <a href="http://www.cristalab.com/" target="_blank">cristalab</a>&nbsp;un video tutorial de HTML5, este video es de autoría del diseñador Armando Sosa y bueno el video está genial para todos los que queremos empezar con esta tecnología.</p>
<p>Aquí les dejo el video y claro les recomiendo visitar la web de <a href="http://www.cristalab.com/" target="_blank">cristalab</a>, donde encontrarán&nbsp;una infinidad de tutoriales y cosas muy interesantes.</p>
<div align="center"><iframe frameborder="0" height="400" src="http://player.vimeo.com/video/9680041" width="500"></iframe><br />
<a href="http://vimeo.com/9680041" target="_blank">HTML5 para principiantes</a> from <a href="http://vimeo.com/user284743" target="_blank">Armando Sosa</a> on <a href="http://vimeo.com/" target="_blank">Vimeo</a>.</div>
<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8365739497512158383-6294958799189655795?l=flashadictos.blogspot.com' alt='' /></div>
<p><a href="http://feedads.g.doubleclick.net/~a/T1R9y8FAJQfbF-8pfywNpaCW6Ck/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/T1R9y8FAJQfbF-8pfywNpaCW6Ck/0/di" border="0" ismap="true"></img></a><br/><br />
<a href="http://feedads.g.doubleclick.net/~a/T1R9y8FAJQfbF-8pfywNpaCW6Ck/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/T1R9y8FAJQfbF-8pfywNpaCW6Ck/1/di" border="0" ismap="true"></img></a></p>
<p><img src="http://feeds.feedburner.com/~r/Flashadictos/~4/fOu9QgBGxiQ" height="1" width="1"/></p>


<p>Related posts:<ol><li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/Yfidf8EEA0k/detectar-soporte-para-html5-con-modernizr' rel='bookmark' title='Permanent Link: Detectar soporte para HTML5 con Modernizr' target="_blank">Detectar soporte para HTML5 con Modernizr</a> <small>Cuando empezamos a trabajar con HTML5, tenemos que tener en...</small></li>
<li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/NEl7h8-Gpw4/detectar-soporte-para-html5-con-modernizr-' rel='bookmark' title='Permanent Link: Detectar soporte para HTML5 con Modernizr' target="_blank">Detectar soporte para HTML5 con Modernizr</a> <small>Cuando empezamos a trabajar con HTML5, tenemos que tener en...</small></li>
<li><a href='http://www.subflash.com/2011/06/talleres-2011-html5-y-css3-para-movil/' rel='bookmark' title='Permanent Link: Talleres 2011: HTML5 y CSS3 para móvil' target="_blank">Talleres 2011: HTML5 y CSS3 para móvil</a> <small>Y bueno&#8230; no podíamos tener un Subflash en este 2011...</small></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/' target="_blank">Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.adobeflash.es/html-5-para-principiantes-20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>100 plantillas HTML para newsletters</title>
		<link>http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/</link>
		<comments>http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 18:28:19 +0000</pubDate>
		<dc:creator>Ángel Miñano</dc:creator>
				<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.coconnut.com/blog/?p=995</guid>
		<description><![CDATA[
Desde la pagina de campaignmonitor.com podemos acceder libremente a la descarga de 100 templates html para nuestras newsletters
Link
http://www.campaignmonitor.com/templates/



No related posts.

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://www.coconnut.com/blog" target="_blank">Ángel Miñano</a> en el blog <a href="http://www.coconnut.com/blog" target="_blank">http://www.coconnut.com/blog</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/" target="_blank">http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>
<p><img class="aligncenter size-medium wp-image-996" title="cool_large_thumb" src="http://www.coconnut.com/blog/wp-content/uploads/2010/11/cool_large_thumb.png" alt="" /></p>
<p>Desde la pagina de <strong>campaignmonitor.com </strong>podemos acceder libremente a la descarga de 100 templates html para nuestras newsletters</p>
<p><strong>Link</strong></p>
<p><a href="http://www.campaignmonitor.com/templates/" target="_blank"><strong>http://www.campaignmonitor.com/templates/</strong></a></p>

<p><span style="background-color:yellow">Autor del post:</span> <a href="http://www.coconnut.com/blog" target="_blank">Ángel Miñano</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/" target="_blank">http://feedproxy.google.com/~r/blogcoconnut/~3/Aq3X6IgZ2uQ/</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.coconnut.com/blog/2010/11/01/100-plantillas-html-para-newsletters/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cached Commons: Librerías Javascript Online para tus Proyectos</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 04:46:36 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[cdn]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[minificar]]></category>
		<category><![CDATA[Optimización Web]]></category>
		<category><![CDATA[Servicios Web]]></category>
		<category><![CDATA[SWFObject]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1234</guid>
		<description><![CDATA[<p><strong>Cached Commons</strong> es una colección de librerías Javascript que han sido cacheadas, optimizadas y alojadas en el CDN de Github las cuales podemos incluir directamente en nuestros proyectos. Están disponibles librerías como: <em>jQuery</em>, <em>SWFObject</em>, <em>SWFAddress</em>, <em>SyntaxHighlighter</em>, <em>jqPlot</em> entre otros.</p><p><a href="http://cachedcommons.org/"></a></p><p>Cada librería incluida ha sido <em>minificada</em>, luego se la envía al usuario utilizando compresión <em>GZIP</em> y&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/sHbZFEGOoSE/' rel='bookmark' title='Permanent Link: Optimización: Google Page Speed Online'>Optimización: Google Page Speed Online</a> <small>Page Speed el plugin para Firefox y Chrome que permite...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/' rel='bookmark' title='Permanent Link: Depurar Javascript utilizando console.log()'>Depurar Javascript utilizando console.log()</a> <small>Tradicionalmente para depurar Javascript se hace uso de la función...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/uf0YetaroJI/' rel='bookmark' title='Permanent Link: Smaller: Interfaz Gráfica para YUI Compressor en MAC'>Smaller: Interfaz Gráfica para YUI Compressor en MAC</a> <small>Smaller es una interfaz gráfica para YUI Compressor en Mac,...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/aImW4NwT-YzZvHpk42R0kBIvaiE/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/aImW4NwT-YzZvHpk42R0kBIvaiE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/aImW4NwT-YzZvHpk42R0kBIvaiE/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/aImW4NwT-YzZvHpk42R0kBIvaiE/1/di" border="0" ismap="true"></img></a></p><p><strong>Cached Commons</strong> es una colección de librerías Javascript que han sido cacheadas, optimizadas y alojadas en el CDN de Github las cuales podemos incluir directamente en nuestros proyectos. Están disponibles librerías como: <em>jQuery</em>, <em>SWFObject</em>, <em>SWFAddress</em>, <em>SyntaxHighlighter</em>, <em>jqPlot</em> entre otros.</p><p><a href="http://cachedcommons.org/" target="_blank"><img src="http://blog.unijimpe.net/wp-content/uploads/2010/08/cached-commons.jpg" alt="" title="cached-commons" width="400" height="231" /></a></p><p>Cada librería incluida ha sido <em>minificada</em>, luego se la envía al usuario utilizando compresión <em>GZIP</em> y además con los headers necesarios para ser guardados en el cache del usuario. Esto significa que han sido correctamente optimizados para cargarse rápidamente y por consiguiente acelerar la carga de nuestra web.</p><p><strong>Como utilizar Cached Commons</strong></p><p>Para utilizar cualquier librería alojada en <em>Cached Commons</em> solo debes copiar la ruta de la librería e incluirla directamente en tu proyecto.</p><p>Por ejemplo si deseamos utilizar la librería SWFObject podemos hacerlo mediante:</p><div class="syntax_hilite"><div id="html-103"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"http://cachedcommons.org/javascripts/swf/swfobject-2.2.js"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>También podemos utilizar la versión minificada:</p><div class="syntax_hilite"><div id="html-104"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"http://cachedcommons.org/javascripts/swf/swfobject-2.2-min.js"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Este proyecto es semejante al <a href="http://blog.unijimpe.net/google-ajax-libraries-api/" target="_blank">Google Ajax Libraries API</a> el cual también aloja a las principales librerías javascript, pero tiene la ventaja que aloja a muchas mas librerías y plugins más populares. Si aún así no encuentras la librería que necesitas puedes solicitar qu la agreguen al directorio.</p><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=Vm9I7aTmHIA:Lv2BvO-alhk:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=Vm9I7aTmHIA:Lv2BvO-alhk:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=Vm9I7aTmHIA:Lv2BvO-alhk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=Vm9I7aTmHIA:Lv2BvO-alhk:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=Vm9I7aTmHIA:Lv2BvO-alhk:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/Vm9I7aTmHIA" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/Vm9I7aTmHIA/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/cached-commons-librerias-javascript-online-para-tus-proyectos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prevenir el clickjacking con Javascript</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/#comments</comments>
		<pubDate>Sun, 22 Aug 2010 21:20:54 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[clickjacking]]></category>
		<category><![CDATA[frame]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[iframe]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Seguridad]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1226</guid>
		<description><![CDATA[<p>Prevenir el <em>clickjacking</em> consiste en evitar que nuestra página sea cargada dentro de otra mediante un <em>frame</em> o <em>iframe</em>, esto para prevenir el robo de contenido así como evitar el uso de nuestra página para forzar a los visitantes a realizar clicks maliciosos. Entonces el objetivo es evitar que nuestra página pueda ser cargada dentro de&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/' rel='bookmark' title='Permanent Link: Depurar Javascript utilizando console.log()'>Depurar Javascript utilizando console.log()</a> <small>Tradicionalmente para depurar Javascript se hace uso de la función...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/' rel='bookmark' title='Permanent Link: Como incluir el botón Google +1 en tu Web'>Como incluir el botón Google +1 en tu Web</a> <small>El botón Google +1 es una utilidad de Google que...</small></li>
<li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/6j2V8IUPU1M/html5-pizarra-con-canvas-y-javascript' rel='bookmark' title='Permanent Link: HTML5: pizarra con canvas y JavaScript'>HTML5: pizarra con canvas y JavaScript</a> <small>Una de las novedades de HTML5 es la etiqueta &lt;canvas&gt;....</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/ey6rP4R1OSXzWpp3sNMbwLkZouQ/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/ey6rP4R1OSXzWpp3sNMbwLkZouQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ey6rP4R1OSXzWpp3sNMbwLkZouQ/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/ey6rP4R1OSXzWpp3sNMbwLkZouQ/1/di" border="0" ismap="true"></img></a></p><p>Prevenir el <em>clickjacking</em> consiste en evitar que nuestra página sea cargada dentro de otra mediante un <em>frame</em> o <em>iframe</em>, esto para prevenir el robo de contenido así como evitar el uso de nuestra página para forzar a los visitantes a realizar clicks maliciosos. Entonces el objetivo es evitar que nuestra página pueda ser cargada dentro de otra utilizando frames o iframes.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2010/08/clickjacking.jpg" alt="" title="clickjacking" width="336" height="192" /></p><p><strong>Que es Clickjacking?</strong></p><p>El clickjacking consiste en cargar una página dentro de otra utilizando un <em>iframe</em> y sobre ella mostrar otra página oculta con transparencia, de forma tal que si hacemos click en un botón para buscar estaremos indirectamente haciendo click sobre otra página para propósitos maliciosos.</p><p><strong>Prevenir Clickjacking - Primer Método</strong></p><p>La idea básica para prevenir que nuestra página sea cargada dentro de otra con frames o iframes es verificar la propiedad <em>location</em> del frame actual es igual al del frame superior. Si no son iguales estas propiedades es síntoma que nuestra página se esta cargando dentro de otra por lo tanto redireccionamos al url de nuestra web.</p><div class="syntax_hilite"><div id="html-100"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">if (top.location != location) top.location = self.location;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>El método anterior por lo general es suficiente en la mayoría de los casos, pero existen técnicas para saltarse esta verificación, por ejemplo utilizar iframes anidados o generar errores de Javascript con lo cual se detiene cualquier verificación con javascript adicional. En el artículo <a href="http://seclab.stanford.edu/websec/framebusting/" target="_blank">Busting frame busting: a study of clickjacking vulnerabilities at popular sites</a> se explica las múltiples formas de evitar el <em>Frame Busting</em>.</p><p><strong>Prevenir Clickjacking - Segundo Método</strong></p><p>Una forma sencilla de prevenir el uso de nuestras páginas en otros sitios es primero ocultar todo el contenido de nuestra web utilizando estilos. Luego de ello verificamos si la propiedad <em>location</em> del frame actual y el superior son iguales en cuyo caso volvemos visible todo el contenido de nuestro web en caso contrario redireccionamos a nuestra url.</p><p>Primero colocamos el siguiente código en el header para ocultar el contenido.</p><div class="syntax_hilite"><div id="html-101"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/style.html" target="_blank"><span style="color: #000000;">&lt;style</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/css"</span><span style="color: #000000;">&gt;</span></a></span> body { display:none; } <span style="color: #009900;"><span style="color: #000000;">&lt;/style&gt;</span></span></div></li></ol></div></div></div><p> Al final del contenido colocamos el siguiente código, el cual verifica si el frame actual es igual al frame superior para volver visible el contenido.</p><div class="syntax_hilite"><div id="html-102"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">if (self == top) {</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;document.getElementsByTagName(&quot;body&quot;)[0].style.display = 'block';</div></li><li style="color:#26536A;"><div style="">} else {</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;top.location = self.location;</div></li><li style="color:#26536A;"><div style="">}</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>De esta forma si el atacante de alguna forma genera un error de javascript o utiliza frames anidados solo se mostrará una página en blanco, una validación sencilla pero muy eficiente para evitar que nuestra web sea utilizada por terceros.</p><p><strong>Mas Información</strong></p><ul><li><a href="http://seclab.stanford.edu/websec/framebusting/" target="_blank">Busting frame busting: a study of clickjacking vulnerabilities at popular sites</a></li><li><a href="http://crypto.stanford.edu/framebust/" target="_blank">Defeating Frame Busting Techniques</a></li><li><a href="http://coderrr.wordpress.com/2009/02/13/preventing-frame-busting-and-click-jacking-ui-redressing/" target="_blank">Preventing Frame Busting and Click Jacking (UI Redressing)</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=fzKXOLkBnWE:6Avu1lHKRGk:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=fzKXOLkBnWE:6Avu1lHKRGk:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=fzKXOLkBnWE:6Avu1lHKRGk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=fzKXOLkBnWE:6Avu1lHKRGk:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=fzKXOLkBnWE:6Avu1lHKRGk:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/fzKXOLkBnWE" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/fzKXOLkBnWE/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/prevenir-el-clickjacking-con-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Utilizar el botón oficial de Twitter</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/#comments</comments>
		<pubDate>Sun, 15 Aug 2010 04:34:34 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[boton]]></category>
		<category><![CDATA[compatir]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[tweet button]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1219</guid>
		<description><![CDATA[<p>En esto días <a href="http://twitter.com">Twitter</a> ha lanzado su botón oficial para compartir páginas de forma sencilla y con opciones interesantes en clara competencia a servicios como <em>retweet.com</em> y <em>tweetmeme.com</em>. El nuevo botón se llama <em>Tweet Button</em> y con dos líneas de código puedes tener el botón para compartir tu contenido en Twitter y con la opción&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/0A-_RXqFliY/' rel='bookmark' title='Permanent Link: Como incluir el botón Google +1 en tu Web'>Como incluir el botón Google +1 en tu Web</a> <small>El botón Google +1 es una utilidad de Google que...</small></li>
<li><a href='http://feedproxy.google.com/~r/SdrTutorialesFlashPapervision/~3/5TSt0-13XVQ/publicar-en-twitter-desde-actionscript-30' rel='bookmark' title='Permanent Link: Publicar en Twitter desde Actionscript 3.0'>Publicar en Twitter desde Actionscript 3.0</a> <small>Esta es una función en Actionscript 3.0 para publicar (de...</small></li>
<li><a href='http://www.subflash.com/2011/05/subflash-en-twitter/' rel='bookmark' title='Permanent Link: Subflash en Twitter, Subflash 2011'>Subflash en Twitter, Subflash 2011</a> <small>Bueno poco a poco subflash va metiéndose en redes sociales,...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/_w9cIaq2oSC3Zh235bfxnQbW2uA/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/_w9cIaq2oSC3Zh235bfxnQbW2uA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_w9cIaq2oSC3Zh235bfxnQbW2uA/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/_w9cIaq2oSC3Zh235bfxnQbW2uA/1/di" border="0" ismap="true"></img></a></p><p>En esto días <a href="http://twitter.com" target="_blank">Twitter</a> ha lanzado su botón oficial para compartir páginas de forma sencilla y con opciones interesantes en clara competencia a servicios como <em>retweet.com</em> y <em>tweetmeme.com</em>. El nuevo botón se llama <em>Tweet Button</em> y con dos líneas de código puedes tener el botón para compartir tu contenido en Twitter y con la opción de mostrar la cantidad de <em>tweets</em> hechas a tu contenido.</p><p><a href="http://twitter.com/goodies/tweetbutton" target="_blank"><img src="http://blog.unijimpe.net/wp-content/uploads/2010/08/tweet-button.jpg" alt="" title="tweet-button" width="430" height="122" /></a></p><p><strong>Utilizar Tweet Button (Básico)</strong></p><p>Utilizar <em>Tweet Button</em>, es muy sencillo, solo tienes que agregar dos líneas de código a tu pagina y esto se encargará de tomar el titulo y url de tu página para mostrarlo en la campo para compartir en Twitter.</p><div class="syntax_hilite"><div id="html-69"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"http://platform.twitter.com/widgets.js"</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html" target="_blank"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"http://twitter.com/share"</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">"twitter-share-button"</span><span style="color: #000000;">&gt;</span></a></span>Tweet<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>Con el cual obtenemos el siguiente resultado:<br /> <script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script><br /> <a href="http://twitter.com/share" class="twitter-share-button" target="_blank">Tweet</a></p><p><strong>Utilizar Tweet Button (Avanzado)</strong></p><p>Adicionalmente se pueden personalizar varios parámetros para controlar el contenido del tweet que se enviará, para ello podemos agregar variables al enlace del código anterior. Los parámetros disponibles son:</p><ul><li><strong>count</strong> indica como se mostrará la cantida de tweets (<em>horizontal</em>, <em>vertical</em>, <em>none</em>).</li><li><strong>lang</strong> idioma en el cual se mostrará el botón (<em>en</em>, <em>fr</em>, <em>de</em>, <em>es</em>, <em>ja</em>).</li><li><strong>url</strong> el ruta de la página que deseas compartir.</li><li><strong>text</strong> texto que se mostrará en el tweet.</li><li><strong>via</strong> nombre del usuario de Twitter que se usará como autor.</li><li><strong>related</strong> cuenta de twitter que se recomendará luego de hacer el tweet.</li></ul><p>Entonces si elegimos mostrar el botón con la cantidad de tweets en la parte superior del botón y que en el texto se mencione nuestra cuenta de Twitter, tendríamos:</p><div class="syntax_hilite"><div id="html-70"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">src</span>=<span style="color: #ff0000;">"http://platform.twitter.com/widgets.js"</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html" target="_blank"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"http://twitter.com/share?count=vertical&amp;via=unijimpe"</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">"twitter-share-button"</span><span style="color: #000000;">&gt;</span></a></span>Tweet<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>Con lo que obtendríamos el siguiente resultado:<br /> <script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script><br /> <a href="http://twitter.com/share?count=vertical&#038;via=unijimpe" class="twitter-share-button" target="_blank">Tweet</a></p><p>Para mayor información acerca de estos parámetros pueden leer la documentación oficial para desarrolladores en <a href="http://dev.twitter.com/pages/tweet_button" target="_blank">Tweet Button | Developer documentation for the Sharing API</a>.</p><p><strong>Utilizar Generador de Tweet Button</strong></p><p>Twitter ha creado un generados de botones, el cual te guía para configurar los diferentes parámetros del botón, al final de este proceso te mostrará el código para copiarlo y pegarlo en tu web.</p><p><img src="http://blog.unijimpe.net/wp-content/uploads/2010/08/generate-button.jpg" alt="" title="generate-button" width="500" height="166" class="alignnone size-full wp-image-1221" /></p><p><strong>Mas Información</strong></p><ul><li><a href="http://twitter.com/goodies/tweetbutton" target="_blank">Tweet Button Goodies Page</a></li><li><a href="http://dev.twitter.com/pages/tweet_button" target="_blank">Tweet Button | Developer documentation for the Sharing API</a></li><li><a href="http://blog.twitter.com/2010/08/pushing-our-tweet-button.html" target="_blank">Pushing Our (Tweet) Button</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=aoL7YJaH3O0:5nW4XHWYXt4:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=aoL7YJaH3O0:5nW4XHWYXt4:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=aoL7YJaH3O0:5nW4XHWYXt4:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=aoL7YJaH3O0:5nW4XHWYXt4:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=aoL7YJaH3O0:5nW4XHWYXt4:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/aoL7YJaH3O0" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/aoL7YJaH3O0/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/utilizar-el-boton-oficial-de-twitter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Técnicas para Ofuscar Email</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 07:13:38 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[codificar]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[ofuscar]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[spam]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1209</guid>
		<description><![CDATA[<p>El SPAM es uno de los problemas por la que todo usuario a perdido mucho tiempo, siempre nos envían correos no solicitados con publicidad. Una de las técnicas utilizadas por los Spammers para obtener dirección email es crear <em>robots</em> que van por todas las páginas leyendo y guardando las direcciones email publicadas. Basado en este método&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/Wn8gRImzpg8/' rel='bookmark' title='Permanent Link: Protege tu web del SPAM con PHP y Akismet'>Protege tu web del SPAM con PHP y Akismet</a> <small>Akismet el servicio que filtra los mensajes considerados como SPAM...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/uf0YetaroJI/' rel='bookmark' title='Permanent Link: Smaller: Interfaz Gráfica para YUI Compressor en MAC'>Smaller: Interfaz Gráfica para YUI Compressor en MAC</a> <small>Smaller es una interfaz gráfica para YUI Compressor en Mac,...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/' rel='bookmark' title='Permanent Link: Depurar Javascript utilizando console.log()'>Depurar Javascript utilizando console.log()</a> <small>Tradicionalmente para depurar Javascript se hace uso de la función...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/7NqbZv8SmO2FUnMGh1YQmy4_-JA/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/7NqbZv8SmO2FUnMGh1YQmy4_-JA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/7NqbZv8SmO2FUnMGh1YQmy4_-JA/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/7NqbZv8SmO2FUnMGh1YQmy4_-JA/1/di" border="0" ismap="true"></img></a></p><p>El SPAM es uno de los problemas por la que todo usuario a perdido mucho tiempo, siempre nos envían correos no solicitados con publicidad. Una de las técnicas utilizadas por los Spammers para obtener dirección email es crear <em>robots</em> que van por todas las páginas leyendo y guardando las direcciones email publicadas. Basado en este método para obtener nuestras direcciones tenemos una regla para evitar el spam.</p><blockquote><p>Nunca publicar directamente direcciones <strong>email</strong> en una página web.</p></blockquote><p>Veamos algunas técnicas para mostrar direcciones de correo en nuestras páginas sin exponernos a un ataque de spam a estas cuentas de email.</p><p><a href="http://samples.unijimpe.net/ofuscar-email.php" target="_blank"><img src="http://blog.unijimpe.net/wp-content/uploads/2010/08/obuscate-email.jpg" alt="" title="obuscate-email" width="500" height="190" /></a></p><p><strong>Utilizando CSS: Método #1</strong></p><p>Una técnica sencilla pero que da buenos resultados es escribir la dirección email al revés y luego con estilos mostrarlo en la dirección correcta utilizando la propiedad <em>direction</em>, por ejemplo:</p><div class="syntax_hilite"><div id="html-41"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/span.html" target="_blank"><span style="color: #000000;">&lt;span</span></a> <span style="color: #000066;">style</span>=<span style="color: #ff0000;">"direction:rtl; unicode-bidi:bidi-override;"</span><span style="color: #000000;">&gt;</span></a></span>moc.oinimod@otcatnoc<span style="color: #009900;"><span style="color: #000000;">&lt;/span&gt;</span></span></div></li></ol></div></div></div><p></p><p>Entonces creamos una función que se encargue de utilizar este método para mostrar los emails en nuestra web:</p><div class="syntax_hilite"><div id="php-42"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> hideEmail<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$mail</span> = <a href="http://www.php.net/strrev" target="_blank"><span style="color:#000066;">strrev</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">return</span> <span style="color:#FF0000;">"&lt;span style=<span style="color:#000099;">\"</span>direction:rtl; unicode-bidi:bidi-override;<span style="color:#000099;">\"</span>&gt;"</span>.<span style="color:#0000FF;">$mail</span>.<span style="color:#FF0000;">"&lt;/span&gt;"</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p><strong>Utilizando CSS: Método #2</strong></p><p>Otró método consiste en agregarle un texto oculto dentro de la dirección email, de esta forma la dirección se visualizará correctamente pero si un spammer copia el email esta contendrá un dirección inválida. Este texto se oculta con estilos utilizando la propiedad <em>display</em>.</p><div class="syntax_hilite"><div id="html-43"><div class="html"><ol><li style="color:#3A6A8B;"><div style="">contacto@<span style="color: #009900;"><a href="http://december.com/html/4/element/span.html" target="_blank"><span style="color: #000000;">&lt;span</span></a> <span style="color: #000066;">style</span>=<span style="color: #ff0000;">"display:none"</span><span style="color: #000000;">&gt;</span></a></span>null<span style="color: #009900;"><span style="color: #000000;">&lt;/span&gt;</span></span>dominio.com</div></li></ol></div></div></div><p></p><p>Luego creamos la función en PHP para ofuscar los emails:</p><div class="syntax_hilite"><div id="php-44"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> hideEmail<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span> = <a href="http://www.php.net/explode" target="_blank"><span style="color:#000066;">explode</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"@"</span>, <span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">return</span> <span style="color:#0000FF;">$temp</span><span style="color:#006600;">&#91;</span><span style="color:#CC66CC;color:#800000;">0</span><span style="color:#006600;">&#93;</span>.<span style="color:#FF0000;">"@&lt;span style=<span style="color:#000099;">\"</span>display:none;<span style="color:#000099;">\"</span>&gt;null&lt;/span&gt;"</span>.<span style="color:#0000FF;">$temp</span><span style="color:#006600;">&#91;</span><span style="color:#CC66CC;color:#800000;">1</span><span style="color:#006600;">&#93;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p><strong>Utilizando codificación ROT13</strong></p><p>Este método consiste en codificar la dirección email con el algoritmo ROT13 que consiste en trasladar 13 posiciones las letras del alfabeto, dejando los caracteres no-alfabéticos sin modificar. Para ello escribimos el email codificado y lo mostramos correctamente con una función Javascript <a href="http://phpjs.org/functions/str_rot13%3A528" target="_blank">str_rot13</a>.</p><div class="syntax_hilite"><div id="html-45"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">document.write((&quot;pbagnpgb@qbzvavb.pbz&quot;).replace(/[a-z]/gi, function(s){</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; return String.fromCharCode(s.charCodeAt(0)+(s.toLowerCase()<span style="color: #009900;"><span style="color: #000000;">&lt;</span></a><span style="color: #ff0000;">'n'</span>?<span style="color: #cc66cc;color:#800000;">13</span>:-<span style="color: #cc66cc;color:#800000;">13</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Luego escribimos una función en PHP que se encargue de codificar la dirección email y que imprima el código javascript para decodificarlo:</p><div class="syntax_hilite"><div id="php-46"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#000000;">function</span> hideEmail<span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span> <span style="color:#006600;">&#123;</span></div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span> = <span style="color:#FF0000;">"&lt;script type=<span style="color:#000099;">\"</span>text/javascript<span style="color:#000099;">\"</span>&gt;<span style="color:#000099;">\n</span>"</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span>.= <span style="color:#FF0000;">"document.write((<span style="color:#000099;">\"</span>"</span>.<a href="http://www.php.net/str_rot13" target="_blank"><span style="color:#000066;">str_rot13</span></a><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$mail</span><span style="color:#006600;">&#41;</span>.<span style="color:#FF0000;">"<span style="color:#000099;">\"</span>).replace(/[a-z]/gi, function(s){ <span style="color:#000099;">\n</span>"</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span>.= <span style="color:#FF0000;">"&nbsp; &nbsp;return String.fromCharCode(s.charCodeAt(0)+(s.toLowerCase()&lt;'n'?13:-13));<span style="color:#000099;">\n</span>"</span>;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span>.= <span style="color:#FF0000;">"}));<span style="color:#000099;">\n</span>"</span>;</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; <span style="color:#0000FF;">$temp</span>.= <span style="color:#FF0000;">"&lt;/script&gt;"</span>;&nbsp; &nbsp;</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; <span style="color:#616100;">return</span> <span style="color:#0000FF;">$temp</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#006600;">&#125;</span></div></li></ol></div></div></div><p></p><p>Puedes escoger cualquiera de estar técnicas y utilizarlo rápidamente para mostrar tu dirección de email sin temor a ataques de SPAM. Puedes descargar el código fuente con estas funciones asi como el ejemplo de uso para que puedan hacer sus pruebas.</p><p style="text-align:left;"><a href="http://blog.unijimpe.net/download/ofuscar-email.zip" title="Email  Obfuscate" target="_blank"><img src="http://blog.unijimpe.net/btdown.png" border="0"></a></p><p><strong>Mas Información</strong></p><ul><li><a href="http://techblog.tilllate.com/2008/07/20/ten-methods-to-obfuscate-e-mail-addresses-compared/" target="_blank">Nine ways to obfuscate e-mail addresses compared</a></li><li><a href="http://ch2.php.net/str_rot13" target="_blank">PHP: str_rot13 - Manual</a></li><li><a href="http://phpjs.org/functions/str_rot13%3A528" target="_blank">JavaScript str_rot13</a></li><li><a href="http://www.maurits.vdschee.nl/php_hide_email/" target="_blank">PHP hide_email()</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=a_x2lwzC4hA:antq5q3ZY7o:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=a_x2lwzC4hA:antq5q3ZY7o:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=a_x2lwzC4hA:antq5q3ZY7o:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=a_x2lwzC4hA:antq5q3ZY7o:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=a_x2lwzC4hA:antq5q3ZY7o:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/a_x2lwzC4hA" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/a_x2lwzC4hA/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/tecnicas-para-ofuscar-email/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prevenir ataques XSS con PHP</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 06:35:16 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[clase]]></category>
		<category><![CDATA[etiquetas]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[POST]]></category>
		<category><![CDATA[Seguridad]]></category>
		<category><![CDATA[xss]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1208</guid>
		<description><![CDATA[<p>Una ataque <strong>XSS</strong> (Cross Site Scripting) consiste en que el atacante ingresa código HTML o javascript en los formularios y si estos no esta filtrados correctamente mostrarán este código en nuestra página alterando el contenido original. Por ejemplo en un formulario de contacto un usuario podría colocar el siguiente código:</p><span style="color: #009900"><a href="http://december.com/html/4/element/script.html"><span style="color: #000000">&#60;script&#62;</span></a></span>window.location = &#34;http://www.google.com&#34;;&#60;span style=&#34;color:<p>&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/4Bx-VoksjEk/' rel='bookmark' title='Permanent Link: PHP con MySQL: Editar Registros con MySQL'>PHP con MySQL: Editar Registros con MySQL</a> <small>Continuando con la serie de artículos para trabajar con datos...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/jaLAPVqQsnQ/' rel='bookmark' title='Permanent Link: Acortar URLs con PHP y Goo.gl'>Acortar URLs con PHP y Goo.gl</a> <small>Goo.gl es el servicio de Google para acortar URLs semejante...</small></li>
<li><a href='http://feedproxy.google.com/~r/unijimpe/~3/Wn8gRImzpg8/' rel='bookmark' title='Permanent Link: Protege tu web del SPAM con PHP y Akismet'>Protege tu web del SPAM con PHP y Akismet</a> <small>Akismet el servicio que filtra los mensajes considerados como SPAM...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/46e7LToQ0aCe9o_I-5KnUThEjls/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/46e7LToQ0aCe9o_I-5KnUThEjls/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/46e7LToQ0aCe9o_I-5KnUThEjls/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/46e7LToQ0aCe9o_I-5KnUThEjls/1/di" border="0" ismap="true"></img></a></p><p>Una ataque <strong>XSS</strong> (Cross Site Scripting) consiste en que el atacante ingresa código HTML o javascript en los formularios y si estos no esta filtrados correctamente mostrarán este código en nuestra página alterando el contenido original. Por ejemplo en un formulario de contacto un usuario podría colocar el siguiente código:</p><div class="syntax_hilite"><div id="html-47"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script&gt;</span></a></span>window.location = &quot;http://www.google.com&quot;;<span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Si nuestro formulario no valida correctamente estos datos ingresados, entonces al momento de mostrar este comentario en nuestra web automáticamente se hará un redirección a la ruta que defina el atacante. Basado en esto podríamos proponer un regla básica para cualquier desarrollo:</p><blockquote><p>Toda información ingresada por el usuario siempre debe ser verificada y limpiada antes de utilizarla</p></blockquote><p><strong>Prevenir XSS con PHP (Básico)</strong></p><p>Lo primero para prevenir estos ataques es limpiar cualquier etiqueta html ingresada por el usuario, para ello podemos utilizar la función <em>strip_tags</em>, la cual elimina etiquetas html. Si aplicamos esta función al texto ingresado en el ejemplo anterior tendríamos:</p><div class="syntax_hilite"><div id="php-48"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><a href="http://www.php.net/echo" target="_blank"><span style="color:#000066;">echo</span></a> <a href="http://www.php.net/strip_tags" target="_blank"><span style="color:#000066;">strip_tags</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">'&lt;script&gt;window.location = &quot;http://www.google.com&quot;;&lt;/script&gt;'</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#FF9933; font-style:italic;">// resultado: window.location = &quot;http://www.google.com&quot;; </span></div></li></ol></div></div></div><p></p><p>Esto es una forma básica de prevenir un ataque XSS, pero existen versiones mas elaboradas de códigos de ataque que pueden no ser limpiadas por esta función. Otro problema de esta solución es que limpia todas las etiquetas html, pero en algunas ocasiones existe la necesidad de permitir algunas etiquetas (Por ejemplo: <em>p</em>, <em>strong</em>, <em>em</em>) para lo cual necesitamos una solución mas elaborada.</p><p><strong>Prevenir XSS con PHP Input Filter</strong></p><p><a href="http://www.phpclasses.org/package/2189-PHP-Filter-out-unwanted-PHP-Javascript-HTML-tags-.html" target="_blank">PHP Input Filter</a>, es una clase escrita en PHP que permite filtrar código malicioso ingresado en los formularios para prevenir ataques XSS de manera sencilla, tiene la cualidad de no limpiar determinadas etiquetas o atributos.</p><p>Para utilizar esta clase, descargamos los archivos desde el web oficial e incluimos el archivo <em>class.inputfilter.php</em> al inicio de nuestro PHP. Luego se debe crear una instancia de la clase <em>InputFilter</em>, entonces podemos filtrar los datos con el método <em>process</em> de la siguiente forma:</p><div class="syntax_hilite"><div id="php-49"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#616100;">require_once</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"class.inputfilter.php"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$ifilter</span> = <span style="color:#000000;">new</span> InputFilter<span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$nombre</span> = <span style="color:#0000FF;">$ifilter</span>-&gt;<span style="color:#006600;">process</span><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'nombre'</span><span style="color:#006600;">&#93;</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p>También se pueden filtrar todos los campos enviados por el formulario, por ejemplo si el formulario es enviado por el método <em>POST</em>, podríamos utilizar el siguiente código para filtrar todos los campos para luego utilizarlos sin problemas.</p><div class="syntax_hilite"><div id="php-50"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#616100;">require_once</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"class.inputfilter.php"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$ifilter</span> = <span style="color:#000000;">new</span> InputFilter<span style="color:#006600;">&#40;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$_POST</span> = <span style="color:#0000FF;">$ifilter</span>-&gt;<span style="color:#006600;">process</span><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p><strong>Permitir etiquetas con PHP Input Filter</strong></p><p>Para evitar que algunas etiquetas sean filtradas podemos pasarlas como un array como parámetro al momento de crear la instancia de la clase. Por ejemplo para permitir las etiquetas <em>strong</em> y<em>em</em> y  tendríamos:</p><div class="syntax_hilite"><div id="php-51"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#616100;">require_once</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"class.inputfilter.php"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$ifilter</span> = <span style="color:#000000;">new</span> InputFilter<span style="color:#006600;">&#40;</span><a href="http://www.php.net/array" target="_blank"><span style="color:#000066;">array</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">'em'</span>, <span style="color:#FF0000;">'strong'</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$_POST</span> = <span style="color:#0000FF;">$ifilter</span>-&gt;<span style="color:#006600;">process</span><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p><strong>Permitir atributos con PHP Input Filter</strong></p><p>También existe la posibilidad de desear que algunos atributos sean permitidos en el ingreso de los datos por parte del usuario. Por ejemplo podríamos permitir que los visitantes puedan ingresar enlaces para lo cual tendríamos que permitir el atributo <em>href</em> que contiene la ruta de destino.</p><div class="syntax_hilite"><div id="php-52"><div class="php"><ol><li style="color:#3A6A8B;"><div style=""><span style="color:#616100;">require_once</span><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">"class.inputfilter.php"</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#26536A;"><div style=""><span style="color:#0000FF;">$ifilter</span> = <span style="color:#000000;">new</span> InputFilter<span style="color:#006600;">&#40;</span><a href="http://www.php.net/array" target="_blank"><span style="color:#000066;">array</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">'a'</span><span style="color:#006600;">&#41;</span>, <a href="http://www.php.net/array" target="_blank"><span style="color:#000066;">array</span></a><span style="color:#006600;">&#40;</span><span style="color:#FF0000;">'href'</span><span style="color:#006600;">&#41;</span><span style="color:#006600;">&#41;</span>;</div></li><li style="color:#3A6A8B;"><div style=""><span style="color:#0000FF;">$comentario</span> = <span style="color:#0000FF;">$ifilter</span>-&gt;<span style="color:#006600;">process</span><span style="color:#006600;">&#40;</span><span style="color:#0000FF;">$_POST</span><span style="color:#006600;">&#91;</span><span style="color:#FF0000;">'comentario'</span><span style="color:#006600;">&#93;</span><span style="color:#006600;">&#41;</span>;</div></li></ol></div></div></div><p></p><p><strong>Mas Información</strong></p><ul><li><a href="http://es.wikipedia.org/wiki/Cross-site_scripting" target="_blank">Cross-site scripting</a></li><li><a href="http://ha.ckers.org/xss.html" target="_blank">XSS (Cross Site Scripting) Cheat Sheet</a></li><li><a href="http://www.phpclasses.org/package/2189-PHP-Filter-out-unwanted-PHP-Javascript-HTML-tags-.html" target="_blank">Class: PHP Input Filter</a></li><li><a href="http://blogs.vinuthomas.com/2006/07/03/cleaning-up-your-inputs/" target="_blank">Cleaning up your inputs</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=Hi0g2HOTH-Y:foWQK9Z63Ww:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=Hi0g2HOTH-Y:foWQK9Z63Ww:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=Hi0g2HOTH-Y:foWQK9Z63Ww:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=Hi0g2HOTH-Y:foWQK9Z63Ww:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=Hi0g2HOTH-Y:foWQK9Z63Ww:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/Hi0g2HOTH-Y" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/Hi0g2HOTH-Y/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/prevenir-ataques-xss-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Utilizar Eventos en Javascript</title>
		<link>http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/</link>
		<comments>http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 23:07:28 +0000</pubDate>
		<dc:creator>unijimpe</dc:creator>
				<category><![CDATA[alert]]></category>
		<category><![CDATA[eventos]]></category>
		<category><![CDATA[formulario]]></category>
		<category><![CDATA[funciones]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://blog.unijimpe.net/?p=1200</guid>
		<description><![CDATA[<p>Un evento es un proceso que se realiza en respuesta a determinada acción realizada por el usuario, por ejemplo si el usuario presiona un botón, entonces en respuesta al evento '<em>onclick</em>' que representa el presionar el botón realizamos una acción. Para poder interactuar con los eventos se utilizan los Detectores de Eventos lo cuales detectan los&#8230;</p>


Related posts:<ol><li><a href='http://feedproxy.google.com/~r/unijimpe/~3/vr1mN4v9cA0/' rel='bookmark' title='Permanent Link: Depurar Javascript utilizando console.log()'>Depurar Javascript utilizando console.log()</a> <small>Tradicionalmente para depurar Javascript se hace uso de la función...</small></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p><span style="background-color:yellow">Este es un agregador de feeds de blogs relacionados con la Plataforma Flash de Adobe, no es el creador de los contenidos que contiene.</span></p>
<p>Este post fue creado por <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> en el blog <a href="http://blog.unijimpe.net" target="_blank">http://blog.unijimpe.net</a>.<br/> Deberías haber sido redirigido al post original mediante Javascript, de no se así puedes acceder a él desde el siguiente enlace:<br/><a href="http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/</a></p>
<script type="text/javascript">
window.location = "http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/"
</script>
<p><span style="background-color:yellow">Post agregado:</span></p>

<p><a href="http://feedads.g.doubleclick.net/~a/jRr-O9pCFSE2p0Kbp90ry9CRuMs/0/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/jRr-O9pCFSE2p0Kbp90ry9CRuMs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/jRr-O9pCFSE2p0Kbp90ry9CRuMs/1/da" target="_blank"><img src="http://feedads.g.doubleclick.net/~a/jRr-O9pCFSE2p0Kbp90ry9CRuMs/1/di" border="0" ismap="true"></img></a></p><p>Un evento es un proceso que se realiza en respuesta a determinada acción realizada por el usuario, por ejemplo si el usuario presiona un botón, entonces en respuesta al evento '<em>onclick</em>' que representa el presionar el botón realizamos una acción. Para poder interactuar con los eventos se utilizan los Detectores de Eventos lo cuales detectan los eventos y permiten llamar a funciones en respuesta al evento.</p><h3>Cuales son los Detectores de Eventos Disponibles?</h3><p>Existen eventos para los diferentes elementos de la página, los mas importantes son los siguientes:</p><p><strong>Eventos de Formularios</strong></p><ul><li><strong>onblur</strong> - el campo pierde el foco.</li><li><strong>onchange</strong> - el elemento que tiene el foco ha cambiado su valor.</li><li><strong>onfocus</strong> -  cuando el campo recibe el foco.</li><li><strong>onreset</strong> - sucede cuando el usuario ha reseteado el formulario.</li><li><strong>onselect</strong> - cuando un texto ha sido seleccionado.</li><li><strong>onsubmit</strong> - el usuario ha seleccionado enviar el formulario.</li></ul><p><strong>Eventos de Enlaces</strong></p><ul><li><strong>onclick</strong> - Cuando se hace click en el elemento seleccionado.</li><li><strong>onmouseout</strong> - Cuando el mouse se mueve encima del enlace o botón.</li><li><strong>onmouseover</strong> - Cuando el mouse se mueve fuera del enlace o botón.</li></ul><p><strong>Eventos del Teclado</strong></p><ul><li><strong>onkeydown</strong> El usuario presiona una tecla.</li><li><strong>onkeypress</strong> El usuario mantiene presionada una tecla.</li><li><strong>onkeyup</strong> El usuario suelta la tecla.</li></ul><p><strong>Eventos en Ventanas</strong></p><ul><li><strong>onblur</strong> - Sucede cuando la ventana o frame pierde el foco.</li><li><strong>onerror</strong> - Cuando ocurre un error.</li><li><strong>onfocus</strong> -  La ventana o frame recibe el foco.</li><li><strong>onload</strong> - Si el objeto se ha cargado completamente.</li><li><strong>onunload</strong> - Cuando la venta se cierra.</li><li><strong>onresize</strong> - Cuando se redimensiona la ventana o frame.</li></ul><p><strong>Nota</strong><br /> Si bien es cierto HTML es <em>case-insensitive</em> es decir no distingue entre altas y bajas, para lograr que los documentos  html validen es necesario redactar los detectores de eventos en minúsculas.</p><h3>Como se utilizan los Detectores de Eventos?</h3><p>Los detectores de eventos se puedes asociar directamente a cada elemento como si fuera una propiedad adicional, además debemos colocar que acción realizar cuando se detecte el evento.</p><p><strong>Primera Forma</strong></p><p>Se puede hacer que ejecute una serie de acciones en Javacript:</p><div class="syntax_hilite"><div id="html-65"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html" target="_blank"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"link.html"</span> <span style="color: #000066;">onclick</span>=<span style="color: #ff0000;">"alert('Bienvenido!!');"</span><span style="color: #000000;">&gt;</span></a></span>Entrar<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p><strong>Segunda Forma</strong></p><p>También podemos hacer que llame a una función definida por el usuario:</p><div class="syntax_hilite"><div id="html-66"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html" target="_blank"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"link.html"</span> <span style="color: #000066;">onclick</span>=<span style="color: #ff0000;">"welcome();"</span><span style="color: #000000;">&gt;</span></a></span>Entrar<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>En este caso estamos llamando a una función llamada <em>welcome</em> la cual debemos definir:</p><div class="syntax_hilite"><div id="html-67"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">function welcome() {</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp;alert('Welcome!!!');</div></li><li style="color:#26536A;"><div style="">}</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>En el ejemplo solo hemos mostrado un mensaje de alerta dando la bienvenida al usuario. Obviamente podríamos realizar múltiples acciones como validación de formulario, formateo de datos o llamar a datos AJAX.</p><p><strong>Tercera Forma</strong></p><p>Otra forma es asignar los eventos como métodos de los elementos Javascript. Para ello necesitamos asignar identificadores a los elementos que deseamos.</p><div class="syntax_hilite"><div id="html-68"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/a.html" target="_blank"><span style="color: #000000;">&lt;a</span></a> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">"link.html"</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">"bt"</span><span style="color: #000000;">&gt;</span></a></span>Entrar<span style="color: #009900;"><span style="color: #000000;">&lt;/a&gt;</span></span></div></li></ol></div></div></div><p></p><p>Luego podemos agregar los eventos como propiedades del elemento Javascript (Hay que tener en cuenta que en esta forma los nombres de los detectores de eventos deben estar todos en minúsculas.</p><div class="syntax_hilite"><div id="html-69"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">document.getElementById(&quot;bt&quot;).onclick = function () {</div></li><li style="color:#3A6A8B;"><div style="">&nbsp; &nbsp; alert(&quot;Welcome!!!&quot;);&nbsp; &nbsp;</div></li><li style="color:#26536A;"><div style="">}</div></li><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p><strong>Cuarta Forma</strong></p><p>Otra forma de crear los detectores de eventos es haciendo uso de listeners, para ello se utiliza la función <em>addEventListener</em> de Javascript, el cual recibe como parámetros el nombre del evento (Sin en prefijo <em>on</em>) y la función a ejecutar. Para nuestro ejemplo se tendría:</p><div class="syntax_hilite"><div id="html-70"><div class="html"><ol><li style="color:#3A6A8B;"><div style=""><span style="color: #009900;"><a href="http://december.com/html/4/element/script.html" target="_blank"><span style="color: #000000;">&lt;script</span></a> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">"text/javascript"</span><span style="color: #000000;">&gt;</span></a></span></div></li><li style="color:#26536A;"><div style="">document.getElementById(&quot;bt&quot;).addEventListener('click', welcome, false);</div></li><li style="color:#3A6A8B;"><div style="">function welcome() {</div></li><li style="color:#26536A;"><div style="">&nbsp; &nbsp; alert(&quot;Welcome!!!&quot;);&nbsp; &nbsp;</div></li><li style="color:#3A6A8B;"><div style="">}</div></li><li style="color:#26536A;"><div style=""><span style="color: #009900;"><span style="color: #000000;">&lt;/script&gt;</span></span></div></li></ol></div></div></div><p></p><p>Como se puede ver utilizamos el evento <em>onclick</em> pero sin el prefijo lo que significa utilizar la palabra '<em>click</em>'.</p><p>Con estas dos ultimas formas de asignar los detectores de eventos podemos separar el código HTML del Javascript con lo cual es mas sencillo dar el mantenimiento a nuestro código. Incluso la asignación de los eventos lo podríamos hacer en un archivo externo.</p><p>Pueden ver los ejemplos de este post en <a href="http://samples.unijimpe.net/eventos-javascript.html" target="_blank">http://samples.unijimpe.net/eventos-javascript.html</a>.</p><p><strong>Mas Información</strong></p><ul><li><a href="http://www.quirksmode.org/js/introevents.html" target="_blank">Introduction to Events</a></li><li><a href="http://www.javascriptkit.com/jsref/event.shtml" target="_blank">Javascript Event Object</a></li><li><a href="http://www.quirksmode.org/js/events_advanced.html" target="_blank">Advanced event registration models</a></li><li><a href="http://www.comptechdoc.org/independent/web/cgi/javamanual/javaevents.html" target="_blank">JavaScript Events</a></li></ul><p style="font-size: 10px;border-top: 1px solid #666666;margin-top=12px;padding-top:6px;">&copy; 2006 - 2010 <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a> - Utiliza este feed solo para uso personal, partes de este feed pueden ser utilizados mencionando al autor, no esta permitido publicar enteramente este feed para uso comercial sin permiso del autor.</p><br /> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/unijimpe?a=kFP54grFx4c:wtgiSJbQ-nU:yIl2AUoC8zA" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=kFP54grFx4c:wtgiSJbQ-nU:D7DqB2pKExk" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=kFP54grFx4c:wtgiSJbQ-nU:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/unijimpe?a=kFP54grFx4c:wtgiSJbQ-nU:F7zBnMyn0Lo" target="_blank"><img src="http://feeds.feedburner.com/~ff/unijimpe?i=kFP54grFx4c:wtgiSJbQ-nU:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/unijimpe/~4/kFP54grFx4c" height="1" width="1"/>
<p><span style="background-color:yellow">Autor del post:</span> <a href="http://blog.unijimpe.net" target="_blank">unijimpe</a><br/>
<span style="background-color:yellow">Enlace original:</span> <a href="http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/" target="_blank">http://feedproxy.google.com/~r/unijimpe/~3/kFP54grFx4c/</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.unijimpe.net/utilizar-eventos-en-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

