<?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/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>El blog imposible de diseño &#187; Javascript</title>
	<atom:link href="http://ivanmendoza.net/tag/javascript/feed" rel="self" type="application/rss+xml" />
	<link>http://ivanmendoza.net</link>
	<description>por Iván E. Mendoza</description>
	<lastBuildDate>Wed, 01 Feb 2012 23:13:41 +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>Integrar JSmin con PSPad</title>
		<link>http://ivanmendoza.net/desarrollo-web/javascript/integrar-jsmin-con-pspad?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=integrar-jsmin-con-pspad</link>
		<comments>http://ivanmendoza.net/desarrollo-web/javascript/integrar-jsmin-con-pspad#comments</comments>
		<pubDate>Fri, 05 Mar 2010 09:25:15 +0000</pubDate>
		<dc:creator>Iván</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[pspad]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips & Recomendaciones]]></category>

		<guid isPermaLink="false">http://ivanmendoza.net/?p=931</guid>
		<description><![CDATA[Al estilo de &#8220;Cocinando con&#8230;&#8221;,  un programa [aburrido] de TV, trataré de compartir un tip que le ayudará a aquellos que trabajan Javascript (JS) con PSPad, mi editor de código favorito. El tip consiste en integrar JSmin  a los comandos &#8230; <a href="http://ivanmendoza.net/desarrollo-web/javascript/integrar-jsmin-con-pspad">Sigue leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Al estilo de &#8220;Cocinando con&#8230;&#8221;,  un programa [aburrido] de TV, trataré de compartir un tip que le ayudará a aquellos que trabajan Javascript (JS) con <a href="http://ivanmendoza.net/software/por-qu-uso-pspad-2009-04-14">PSPad, mi editor de código favorito</a>.</p>
<p>El tip consiste en integrar JSmin  a los comandos favoritos de PSpad para comprimir el código JS sin salir del programa.</p>
<h2>Ingredientes</h2>
<ul>
<li><a href="http://www.pspad.com/es/">PSPad </a>instalado (sobre Windows).</li>
<li><a href="http://www.crockford.com/javascript/jsmin.html">JSMin </a>versión línea de comandos para Windows (<a href="http://www.crockford.com/javascript/jsmin.zip">Descarga directa aquí</a>).</li>
<li>Un código javascript para usar de ejemplo.</li>
</ul>
<h2>Preparación</h2>
<p>Ejecuta PSpad y crea un nuevo documento de texto, este servirá para crear un archivo BAT (proceso por lotes) que se encargará de ejecutar JSMin. El archivo debe contener el siguiente código y lo guardas como <em><strong>jsmin.bat</strong></em> en la misma carpeta que jsmin.exe<em><strong><br />
</strong></em></p>
<pre>jsmin.exe &lt;%1 &gt;%2</pre>
<p>Se usa un BAT porque JSMin no funciona correctamente al llamarlo directamente desde PSpad.</p>
<h3>Crear un favorito en PSPad</h3>
<p>Los favoritos están en la pestaña de el panel lateral de PSpad (si no esta visible lo mostras con Ctrl+F2), tiene un icono de corazón. <a href="http://ivanmendoza.net/wp-content/uploads/2010/03/fav.png"><img class="alignnone size-full wp-image-936" title="fav" src="http://ivanmendoza.net/wp-content/uploads/2010/03/fav.png" alt="" width="16" height="14" /></a></p>
<p style="text-align: center;"><a href="http://ivanmendoza.net/wp-content/uploads/2010/03/pspad-fav.png"><img class="alignnone size-full wp-image-937" title="pspad-fav" src="http://ivanmendoza.net/wp-content/uploads/2010/03/pspad-fav.png" alt="" width="226" height="272" /></a></p>
<p style="text-align: left;">Busca un espacio en blanco de la barra y haces click derecho para mostrar el menú y crear un nuevo enlace.</p>
<p style="text-align: left;">En la ventana de nuevo enlace escribí</p>
<ul>
<li>JSmin como nombre</li>
<li>busca el archivo BAT que creaste en el primer paso en Ruta</li>
<li>y como parámetros agrega la siguiente línea</li>
</ul>
<pre>"%File%" "%Dir%%Name%-min.js"</pre>
<p style="text-align: left;">La línea anterior envía la ubicación del archivo javascript y la ubicación del nuevo archivo comprimido agregando &#8220;<em>-min</em>&#8221; al nombre, por ejemplo si el archivo se encuentra en <em>C:/codigo.js</em> el nuevo archivo se creara como <em>c:/codigo-min.js</em></p>
<p style="text-align: left;">En la misma ventana de crear enlace busca la carpeta en donde se encuentra jsmin.bat y jsmin.exe, deberías de tener algo similar a esto</p>
<p style="text-align: center;"><a href="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024445.png"><img class="alignnone size-full wp-image-934" title="PSPad - Editar enlace" src="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024445.png" alt="" width="509" height="390" /></a></p>
<p style="text-align: left;">Active <em>Capturar salida</em> para que muestre los resultados en PSpad pero no es necesario. Presiona <em><strong>Aceptar </strong></em>y listo.</p>
<p style="text-align: left;">Ahora podes comprimir cualquier archivo JS que estes viendo en PSPad solo usando el enlace en los favoritos en la barra lateral. Nada extraordinario pero si muy útil para facilitar el trabajo.</p>
<p style="text-align: center;"><a href="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024504.png"><img class="alignnone size-full wp-image-935" title="PSPad y JSmin" src="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024504.png" alt="" width="209" height="197" /></a></p>
<p><a href="http://ivanmendoza.net/desarrollo-web/javascript/integrar-jsmin-con-pspad?utm_source=feed&utm_medium=link&utm_content=footer&utm_campaign=comentarios&utm_term=Comenta#comments">Comenta</a></p>
<hr />
<p><small><a href="http://ivanmendoza.net?utm_source=feed&utm_medium=link&utm_content=footer&utm_campaign=creditos">ivanmendoza</a> 2010 - Bajo licencia <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/gt/">Creative Commons By-NC-SA</a>.</small></p>]]></content:encoded>
			<wfw:commentRss>http://ivanmendoza.net/desarrollo-web/javascript/integrar-jsmin-con-pspad/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://ivanmendoza.net/wp-content/uploads/2010/03/fav.png" />
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2010/03/fav.png" medium="image">
			<media:title type="html">fav</media:title>
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2010/03/pspad-fav.png" medium="image">
			<media:title type="html">pspad-fav</media:title>
			<media:thumbnail url="http://ivanmendoza.net/wp-content/uploads/2010/03/pspad-fav-150x150.png" />
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024445.png" medium="image">
			<media:title type="html">PSPad &#8211; Editar enlace</media:title>
			<media:thumbnail url="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024445-150x150.png" />
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024504.png" medium="image">
			<media:title type="html">PSPad y JSmin</media:title>
			<media:thumbnail url="http://ivanmendoza.net/wp-content/uploads/2010/03/2010-03-03-024504-150x150.png" />
		</media:content>
	</item>
		<item>
		<title>Registrar el uso de easySlider con Google Analytics</title>
		<link>http://ivanmendoza.net/desarrollo-web/javascript/registrar-el-uso-de-easyslider-con-google-analytics?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=registrar-el-uso-de-easyslider-con-google-analytics</link>
		<comments>http://ivanmendoza.net/desarrollo-web/javascript/registrar-el-uso-de-easyslider-con-google-analytics#comments</comments>
		<pubDate>Fri, 03 Jul 2009 00:53:11 +0000</pubDate>
		<dc:creator>Iván</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[estadisticas]]></category>
		<category><![CDATA[registros]]></category>
		<category><![CDATA[Tips & Recomendaciones]]></category>
		<category><![CDATA[usuarios]]></category>

		<guid isPermaLink="false">http://ivanmendoza.net/?p=621</guid>
		<description><![CDATA[Desde que me enteré de que Google Analytics permite registrar eventos (event tracking) con Javascript he tenido ganas de probarlo. Hace unos días tuve la oportunidad de hacerlo para detectar el uso que dan los visitantes a easySlider (un panel &#8230; <a href="http://ivanmendoza.net/desarrollo-web/javascript/registrar-el-uso-de-easyslider-con-google-analytics">Sigue leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Desde que me enteré de que Google Analytics permite registrar eventos (<strong><em>event tracking</em></strong>) con Javascript he tenido ganas de probarlo. Hace unos días tuve la oportunidad de hacerlo para detectar el uso que dan los visitantes a easySlider (un panel deslizante hecho con jQuery).</p>
<p>Para hacerlo tuve que modificar el código un poco y aprovechando les dejo el tip de cómo lo hice para que se ahorren unos minutos cuando tengan que hacerlo. Antes de empezar, easySlider es esto:</p>
<p style="text-align: center;"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 5px; border-right-width: 0px" title="easyslider" src="http://ivanmendoza.net/wp-content/uploads/2009/07/easyslider.png" border="0" alt="easyslider" width="452" height="143" /></p>
<p>y este tip es para tener un registro de cuantas veces han hecho click en el botón de siguiente o anterior (las flechas a los lados).</p>
<h2>¿Qué necesitas?</h2>
<ul>
<li>Una cuenta de <a href="http://www.google.com/analytics">Google Analytics</a> y el código instalado en la página web. <strong>Importante</strong>: tienes que usar el “nuevo” código<strong> ga.js</strong> y no urchin.js</li>
<li>Tener instalado <a href="http://cssglobe.com/post/3783/">easySlider</a> en la página, eso incluye <a href="http://jquery.com/">jQuery</a> para que easySlider funcione. Para poder modificar easySlider debes usar la versión sin comprimir (el archivo de descarga incluye dos versiones).</li>
<li>Un editor de texto para modificar código javascript de easySlider.</li>
</ul>
<h2>¿Cómo conseguir que Analytics detecte eventos?</h2>
<p>Lo primero es averiguar cuál es el nombre del objeto que esta usando Google Analytics. Si usaste el código que Google te ofrece por defecto tendrás algo como esto:</p>
<p style="text-align: center;"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin: 5px; border-right-width: 0px" title="analytics-codigo-pagetracker" src="http://ivanmendoza.net/wp-content/uploads/2009/07/analyticscodigopagetracker.png" border="0" alt="analytics-codigo-pagetracker" width="474" height="204" /></p>
<p>y el objeto es <strong>pageTracker</strong>. La forma de avisarle a Analytics que se activo un evento es usando la función<strong> _trackEvent</strong> que tiene tres parámetros básicos aunque puedes añadir más.</p>
<pre lang="javascript">pageTracker._trackEvent(“categoria”, “accion”, “etiqueta”, “valor”);</pre>
<p>En resumen los tres primeros parámetros son para clasificar el evento: <strong>categoría</strong> es el más general, seguido de la <strong>acción</strong> (qué evento es) y por último <strong>etiqueta</strong> con la información del elemento. El resto de parámetros son valores que se pueden enviar como información extra.</p>
<p>Para easySlider solo use los tres primeros y la función queda así:</p>
<pre lang="javascript">pageTracker._trackEvent("Homepage_Slider", "Navigate", "Next");</pre>
<h2>Modificar easySlider para disparar los eventos</h2>
<p>Modificar easySlider para lanzar el evento de siguiente y anterior es bastante sencillo, solo debes buscar el siguiente código en el archivo <strong>easySlider.js </strong>y añadir algunas líneas.</p>
<pre lang="javascript">$("a","#"+options.nextId).click(function(){
animate("next");
if (t&gt;=ts) $(this).fadeOut();
$("a","#"+options.prevId).fadeIn();
});

$("a","#"+options.prevId).click(function(){
animate("prev");
if (t&lt;=0) $(this).fadeOut();
$("a","#"+options.nextId).fadeIn();
});</pre>
<p>Ese código es el que usa easySlider para hacer el cambio de información, justo debajo de la función de <strong>animate</strong> debes agregar la llamada a <strong>_trackEvent</strong> para  que Analytics registre el evento. Como precaución incluí la función dentro de un If que revisa el objeto pageTracker.</p>
<pre lang="javascript">$("a","#"+options.nextId).click(function(){
animate("next");
if(pageTracker){
pageTracker._trackEvent("Homepage_Slider", "Navigate", "Next");
}
if (t&gt;=ts) $(this).fadeOut();
$("a","#"+options.prevId).fadeIn();
});

$("a","#"+options.prevId).click(function(){
animate("prev");
if(pageTracker){
pageTracker._trackEvent("Homepage_Slider", "Navigate", "Previous");
}
if (t&lt;=0) $(this).fadeOut();
$("a","#"+options.nextId).fadeIn();
});</pre>
<p>Listo, con esos cambios Google Analytics registrará cada click que hagan tus visitantes en los botones de siguiente y anterior.</p>
<h2>Revisar los registros</h2>
<p>Esta es la parte aburrida porque tenes que esperar a que Google Analytics actualice sus datos. Cuando esto suceda podrás ver las estadísticas en la pestaña de <strong>Content &gt; Event tracking</strong> (Contenido &gt; Seguimiento de eventos) y te mostrará algo como esto</p>
<p><strong>Gráfica de la interacción de los visitantes con easySlider</strong></p>
<p style="text-align: center;"><a href="http://ivanmendoza.net/wp-content/uploads/2009/07/stats.png"><img style="border-right: 0px; border-top: 0px; display: inline; margin: 5px; border-left: 0px; border-bottom: 0px" title="Event Tracking Overview" src="http://ivanmendoza.net/wp-content/uploads/2009/07/stats-thumb.png" border="0" alt="Event Tracking Overview" width="470" height="117" /></a></p>
<p>Tabla del total de eventos y la cantidad de eventos por elemento (label). Como era de esperarse la gente usa más el botón Next (17 clicks) que el botón Previous (5 clicks).</p>
<p style="text-align: center;"><a href="http://ivanmendoza.net/wp-content/uploads/2009/07/stats2.png"><img style="border-right: 0px; border-top: 0px; display: inline; margin: 5px; border-left: 0px; border-bottom: 0px" title="stats2" src="http://ivanmendoza.net/wp-content/uploads/2009/07/stats2-thumb.png" border="0" alt="stats2" width="470" height="145" /></a></p>
<p style="text-align: center;"><img style="border-right: 0px; border-top: 0px; display: inline; margin: 5px; border-left: 0px; border-bottom: 0px" title="stats3" src="http://ivanmendoza.net/wp-content/uploads/2009/07/stats3.png" border="0" alt="stats3" width="470" height="120" /></p>
<p>El seguimiento de eventos de Google Analytics se puede utilizar para muchas cosas más, este es solo un pequeño ejemplo, y puedes aprovechar esta opción para llevar registro de cómo usan los visitantes una página web más allá de las paginas visitan.</p>
<p>Encuentras más información de Event Tracking en la guía oficial de Google Analytics: <a href="http://code.google.com/intl/es/apis/analytics/docs/tracking/eventTrackerGuide.html">Event Tracking Guide</a> (inglés).</p>
<p><strong>Aclaración:</strong> Las modificaciones de este ejemplo son de la última versión publicada de easySlider y no los he probado, en mi caso trabaje con la versión anterior 1.5 de easySlider que varia un poco.</p>
<p><a href="http://ivanmendoza.net/desarrollo-web/javascript/registrar-el-uso-de-easyslider-con-google-analytics?utm_source=feed&utm_medium=link&utm_content=footer&utm_campaign=comentarios&utm_term=Comenta#comments">Comenta</a></p>
<hr />
<p><small><a href="http://ivanmendoza.net?utm_source=feed&utm_medium=link&utm_content=footer&utm_campaign=creditos">ivanmendoza</a> 2009 - Bajo licencia <a href="http://creativecommons.org/licenses/by-nc-sa/3.0/gt/">Creative Commons By-NC-SA</a>.</small></p>]]></content:encoded>
			<wfw:commentRss>http://ivanmendoza.net/desarrollo-web/javascript/registrar-el-uso-de-easyslider-con-google-analytics/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://ivanmendoza.net/wp-content/uploads/2009/07/easyslider.png" />
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2009/07/easyslider.png" medium="image">
			<media:title type="html">easyslider</media:title>
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2009/07/analyticscodigopagetracker.png" medium="image">
			<media:title type="html">analytics-codigo-pagetracker</media:title>
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2009/07/stats-thumb.png" medium="image">
			<media:title type="html">Event Tracking Overview</media:title>
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2009/07/stats2-thumb.png" medium="image">
			<media:title type="html">stats2</media:title>
		</media:content>
		<media:content url="http://ivanmendoza.net/wp-content/uploads/2009/07/stats3.png" medium="image">
			<media:title type="html">stats3</media:title>
		</media:content>
	</item>
	</channel>
</rss>

