<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Commenti a: Una classe countDown in Javascript</title>
	<atom:link href="http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/</link>
	<description>Research &#38; Development  Blog</description>
	<lastBuildDate>Fri, 19 Mar 2010 06:30:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Di: Paolo</title>
		<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/comment-page-1/#comment-2493</link>
		<dc:creator>Paolo</dc:creator>
		<pubDate>Mon, 05 Oct 2009 13:28:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.undolog.com/?p=791#comment-2493</guid>
		<description>&lt;b&gt;@Giovambattista Fazioli&lt;/b&gt;: 

ciao a tutti.
ho trovato questo script molto interessante.
Il mio unico problema? Essendo un idiota con javascript trovo difficile inserirlo in una pagina web.
La modifica che avrei fatto al codice è stata mettere &quot;return&quot; al posto di document.write ma non so poi richiamarlo nella pagina non capendo quale id devo usare.
potete aiutarmi?
grazie
ciao</description>
		<content:encoded><![CDATA[<p><b>@Giovambattista Fazioli</b>: </p>
<p>ciao a tutti.<br />
ho trovato questo script molto interessante.<br />
Il mio unico problema? Essendo un idiota con javascript trovo difficile inserirlo in una pagina web.<br />
La modifica che avrei fatto al codice è stata mettere &#8220;return&#8221; al posto di document.write ma non so poi richiamarlo nella pagina non capendo quale id devo usare.<br />
potete aiutarmi?<br />
grazie<br />
ciao</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Giovambattista Fazioli</title>
		<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/comment-page-1/#comment-1406</link>
		<dc:creator>Giovambattista Fazioli</dc:creator>
		<pubDate>Thu, 20 Nov 2008 20:31:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.undolog.com/?p=791#comment-1406</guid>
		<description>&lt;b&gt;Aggiornamento&lt;/b&gt;: su Microsoft Internet Explorer 7 la data in formato numerico, tipo &lt;code&gt;&quot;3 5, 2008&quot;&lt;/code&gt;, produce errore. Per eliminarlo basta inserire il &quot;mese&quot; nel formato 3 lettere in inglese: Jan, Feb, Mar, etc...</description>
		<content:encoded><![CDATA[<p><b>Aggiornamento</b>: su Microsoft Internet Explorer 7 la data in formato numerico, tipo <code>"3 5, 2008"</code>, produce errore. Per eliminarlo basta inserire il &#8220;mese&#8221; nel formato 3 lettere in inglese: Jan, Feb, Mar, etc&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Riccardo Degni</title>
		<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/comment-page-1/#comment-1223</link>
		<dc:creator>Riccardo Degni</dc:creator>
		<pubDate>Wed, 15 Oct 2008 10:45:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.undolog.com/?p=791#comment-1223</guid>
		<description>@Giovambattista Fazioli&lt;/b&gt;:
&lt;blockquote&gt; Nel metodo &lt;code&gt;output()&lt;/code&gt; metterei al limite un &lt;code&gt;return(output)&lt;/code&gt; più che un &lt;code&gt;document.write()&lt;/code&gt;&lt;/blockquote&gt;
Certamente, ho inserito il &lt;code&gt;document.write()&lt;/code&gt; per una notifica immediata dei test, nella versione definitiva di produzione un &lt;code&gt;return&lt;/code&gt; è &lt;strong&gt;d&#039;obbligo&lt;/strong&gt; ;)

&lt;blockquote&gt;
Complimenti e grazie per gli interessanti suggerimenti :)
&lt;/blockquote&gt;
Di niente, mi ha fatto piacere questo scambio di pareri tecnici :)

A presto,
Riccardo Degni</description>
		<content:encoded><![CDATA[<p>@Giovambattista Fazioli:</p>
<blockquote><p> Nel metodo <code>output()</code> metterei al limite un <code>return(output)</code> più che un <code>document.write()</code></p></blockquote>
<p>Certamente, ho inserito il <code>document.write()</code> per una notifica immediata dei test, nella versione definitiva di produzione un <code>return</code> è <strong>d&#8217;obbligo</strong> <img src='http://www.undolog.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<blockquote><p>
Complimenti e grazie per gli interessanti suggerimenti <img src='http://www.undolog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p></blockquote>
<p>Di niente, mi ha fatto piacere questo scambio di pareri tecnici <img src='http://www.undolog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>A presto,<br />
Riccardo Degni</p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Giovambattista Fazioli</title>
		<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/comment-page-1/#comment-1216</link>
		<dc:creator>Giovambattista Fazioli</dc:creator>
		<pubDate>Tue, 14 Oct 2008 20:27:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.undolog.com/?p=791#comment-1216</guid>
		<description>&lt;b&gt;@Riccardo Degni&lt;/b&gt;: davvero una bella variante, bravo! Interessante soprattutto la tecnica per formattare l&#039;output: ingegnosa e sottile! Nel metodo &lt;code&gt;output()&lt;/code&gt; metterei al limite un &lt;code&gt;return(output)&lt;/code&gt; più che un &lt;code&gt;document.write()&lt;/code&gt;... ma è un dettaglio. Un timer, con &lt;code&gt;start()&lt;/code&gt; e &lt;code&gt;stop()&lt;/code&gt;, renderebbe il tutto davvero completo. Complimenti e grazie per gli interessanti suggerimenti :)</description>
		<content:encoded><![CDATA[<p><b>@Riccardo Degni</b>: davvero una bella variante, bravo! Interessante soprattutto la tecnica per formattare l&#8217;output: ingegnosa e sottile! Nel metodo <code>output()</code> metterei al limite un <code>return(output)</code> più che un <code>document.write()</code>&#8230; ma è un dettaglio. Un timer, con <code>start()</code> e <code>stop()</code>, renderebbe il tutto davvero completo. Complimenti e grazie per gli interessanti suggerimenti <img src='http://www.undolog.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Di: Riccardo Degni</title>
		<link>http://www.undolog.com/2008/10/13/una-classe-countdown-in-javascript/comment-page-1/#comment-1215</link>
		<dc:creator>Riccardo Degni</dc:creator>
		<pubDate>Tue, 14 Oct 2008 14:03:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.undolog.com/?p=791#comment-1215</guid>
		<description>Ciao Giovambattista,
trovo molto interessante questa soluzione Javascript, perchè è semplice e leggera. Da amante dello scripting, ho apportato alcune modifiche al tuo codice che ti posto di seguito:

[js]
function countDown( dd ) {
    // init target time
    var target            = new Date( dd );
    this.targetTime       = target.getTime();
   
    /**
     * refresh countdown
     */
    this.refresh = function() {
        var today             = new Date();
        var currentTime       = today.getTime();
        // time left
        this.leftMilliseconds = this.targetTime - currentTime;
        this.leftSeconds      = Math.floor(this.leftMilliseconds / 1000);
        this.leftMinutes      = Math.floor(this.leftSeconds / 60);
        this.leftHours        = Math.floor(this.leftMinutes / 60);
        this.leftDays         = Math.floor(this.leftHours / 24);
        this.render();
    };

    this.render = function() {
        this.leftMilliseconds = this.ms = this.leftMilliseconds%1000;
        this.leftSeconds = this.s = this.leftSeconds%60;
        this.leftMinutes = this.m = this.leftMinutes%60;
        this.leftHours = this.h = this.leftHours%24;
        this.d = this.leftDays;
    };
    
    this.output = function(_format) {
        var format = _format.split(&#039; &#039;) &#124;&#124; &#039;d h m s ms&#039;, output = &#039;&#039;;
        // alert(fn); commentato da =undo= :D 
        for(var t in format) {
            if(this[format[t]]) output += this[format[t]] + ((t!=format.length-1) ? &#039;, &#039; : &#039;&#039;);
        }
        document.write(output);
    };
    
    this.refresh();
}
[/js]

In sostanza l&#039;aggiunta più corposa è rappresentata dal metodo &lt;strong&gt;output&lt;/strong&gt;, che permette di stampare il countdown con il formato desiderato dall&#039;utente (in una maniera molto simile a come accade nel PHP).
Se ad esempio si volessero stampare il giorno, l&#039;ora, i minuti, i secondi ed i millisecondi  mancanti tramite il nostro countdown, si potrebbe procedere nel seguente modo, senza ogni volta ricorrere al richiamo delle proprietà interne della nostra classe:

[js]
var cd = new countDown( &#039;1 1, 2009&#039; );
cd.output(&#039;d h m s ms&#039;);
[/js]

Il metodo &quot;render&quot; si occupa infine del &quot;normalizzare&quot; il formato dei numeri.

Un&#039;altra aggiunta interessante potrebbe essere quella di un metodo &quot;start&quot;, che richiama il metodo output periodicamente in modo che sembri un vero e proprio countdown (countdown che potrà essere fermato dal rispettivo metodo &quot;stop&quot;).

Riccardo Degni</description>
		<content:encoded><![CDATA[<p>Ciao Giovambattista,<br />
trovo molto interessante questa soluzione Javascript, perchè è semplice e leggera. Da amante dello scripting, ho apportato alcune modifiche al tuo codice che ti posto di seguito:</p>
<div class="igBar"><span id="ljavascript-1"><a href="#" onclick="javascript:showCodeTxt('javascript-1'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">JavaScript:</span>
<div id="javascript-1">
<div class="javascript" style="font-family:monospace;">
<ol>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #003366; font-weight: bold;">function</span> countDown<span style="color: #009900;">&#40;</span> dd <span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// init target time</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> target &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #009900;">&#40;</span> dd <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">targetTime</span> &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> target.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp;</div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #006600; font-style: italic;">/**</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #006600; font-style: italic;">&nbsp; &nbsp; &nbsp;* refresh countdown</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #006600; font-style: italic;">&nbsp; &nbsp; &nbsp;*/</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">refresh</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> today &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Date<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> currentTime &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> today.<span style="color: #660066;">getTime</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// time left</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMilliseconds</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">targetTime</span> <span style="color: #339933;">-</span> currentTime<span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftSeconds</span> &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMilliseconds</span> <span style="color: #339933;">/</span> 1000<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMinutes</span> &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftSeconds</span> <span style="color: #339933;">/</span> 60<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftHours</span> &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #339933;">=</span> Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMinutes</span> <span style="color: #339933;">/</span> 60<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftDays</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> Math.<span style="color: #660066;">floor</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftHours</span> <span style="color: #339933;">/</span> 24<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">render</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp;</div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">render</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMilliseconds</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">ms</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMilliseconds</span><span style="color: #339933;">%</span>1000<span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftSeconds</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">s</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftSeconds</span><span style="color: #339933;">%</span>60<span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMinutes</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">m</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftMinutes</span><span style="color: #339933;">%</span>60<span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftHours</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">h</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftHours</span><span style="color: #339933;">%</span>24<span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">d</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">leftDays</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; </div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">output</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>_format<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003366; font-weight: bold;">var</span> format <span style="color: #339933;">=</span> _format.<span style="color: #660066;">split</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">' '</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #3366CC;">'d h m s ms'</span><span style="color: #339933;">,</span> output <span style="color: #339933;">=</span> <span style="color: #3366CC;">''</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #006600; font-style: italic;">// alert(fn); commentato da =undo= <img src='http://www.undolog.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  </span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">for</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> t <span style="color: #000066; font-weight: bold;">in</span> format<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#91;</span>format<span style="color: #009900;">&#91;</span>t<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> output <span style="color: #339933;">+=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#91;</span>format<span style="color: #009900;">&#91;</span>t<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">+</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span>t<span style="color: #339933;">!=</span>format.<span style="color: #660066;">length</span><span style="color: #339933;">-</span><span style="color: #CC0000;color:#800000;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">?</span> <span style="color: #3366CC;">', '</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">''</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&#125;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; &nbsp; &nbsp; document.<span style="color: #000066; font-weight: bold;">write</span><span style="color: #009900;">&#40;</span>output<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; </div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">this</span>.<span style="color: #660066;">refresh</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #009900;">&#125;</span></div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>In sostanza l'aggiunta più corposa è rappresentata dal metodo <strong>output</strong>, che permette di stampare il countdown con il formato desiderato dall'utente (in una maniera molto simile a come accade nel PHP).<br />
Se ad esempio si volessero stampare il giorno, l'ora, i minuti, i secondi ed i millisecondi  mancanti tramite il nostro countdown, si potrebbe procedere nel seguente modo, senza ogni volta ricorrere al richiamo delle proprietà interne della nostra classe:</p>
<div class="igBar"><span id="ljavascript-2"><a href="#" onclick="javascript:showCodeTxt('javascript-2'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">JavaScript:</span>
<div id="javascript-2">
<div class="javascript" style="font-family:monospace;">
<ol>
<li style="font-weight: normal; vertical-align:top;color:#758DB8;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #003366; font-weight: bold;">var</span> cd <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> countDown<span style="color: #009900;">&#40;</span> <span style="color: #3366CC;">'1 1, 2009'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
<li style="font-weight: bold; vertical-align:top;color:#FF9900;">
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cd.<span style="color: #660066;">output</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'d h m s ms'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
<p>Il metodo "render" si occupa infine del "normalizzare" il formato dei numeri.</p>
<p>Un'altra aggiunta interessante potrebbe essere quella di un metodo "start", che richiama il metodo output periodicamente in modo che sembri un vero e proprio countdown (countdown che potrà essere fermato dal rispettivo metodo "stop").</p>
<p>Riccardo Degni</p>
]]></content:encoded>
	</item>
</channel>
</rss>
