2012-05-13 9 views
0

大丈夫ですので、このカウントダウンを実行するには問題があります。jquery Date()の機能にはdate-timeを提供していますが、毎秒実行したいと思っています。 *これは100%ダイナミックで、ページで1カウントダウン、またはすべてのユーザーで1000カウントになる可能性があることに注意してください。jquery + phpカウントダウンと実行エラー

HTMLマークアップ:

<li class="clu"> 
    <legend>Clutch # 1</legend> 
    <ul class='clutch-des'> 
     <li class='it-d'>2012-05-12 23:55:59</li> 
     <li class='it'>Remaining: <span class="timeremaining" id="dlvdfovwdfivwsf"> 
      <span class="hours">03</span> 
      <span class="mins">09</span> 
      <span class="sec">55</span> 
      </span> 
     </li> 

    </ul> 
</li> 
<li class="clu"> 
    <legend>Clutch # 1</legend> 
    <ul class='clutch-des'> 
     <li class='it-d'>2012-05-12 23:55:59</li> 
     <li class='it'>Remaining: <span class="timeremaining" id="dlvdfovwdfivwsf"> 
      <span class="hours">03</span> 
      <span class="mins">09</span> 
      <span class="sec">55</span> 
      </span> 
     </li> 

    </ul> 
</li> 
<li class="clu"> 
    <legend>Clutch # 2</legend> 
    <ul class='clutch-des'> 
     <li class='it-d'>2012-05-12 23:55:59</li> 
     <li class='it'>Remaining: <span class="timeremaining" id="dlvdfovwdfivwsf"> 
      <span class="hours">03</span> 
      <span class="mins">09</span> 
      <span class="sec">55</span> 
      </span> 
     </li> 

    </ul> 
</li> 
<li class="clu"> 
    <legend>Clutch # 3</legend> 
    <ul class='clutch-des'> 
     <li class='it-d'>2012-05-12 23:55:59</li> 
     <li class='it'>Remaining: <span class="timeremaining" id="dlvdfovwdfivwsf"> 
      <span class="hours">03</span> 
      <span class="mins">09</span> 
      <span class="sec">55</span> 
      </span> 
     </li> 

    </ul> 
</li> 
​ 

のjQuery:

var a = new Array(); var i = 0; 
$('.timeremaining').each(function(index , el){ 
    var ID = $(this).attr('id'); 
    // get due date for countdown 
    var dd = $(this).parent().parent().children('.it-d').text().split('Due :'); var dd = dd[1]; 
    var kids = $(this).children(); 
    $(kids).each(function(){ 
    a[i] = $(this).attr('class'); 
    i++; 
    }); 

    Cdtd(x,a[0],a[1],a[2],ID); 
});  
function Cdtd(x,hrd,md,sd,ID){ 

    var dd = new Date(x); 
    var now = new Date(); 
    var dif = dd.getTime() - now.getTime() ; 
    if(dif <= 0){ 
     clearTimeout(CountDown); 
     alert('Clutch done!'); 
    } 
    var sec = Math.floor(dif/1000); 
    var min = Math.floor(sec/60); 
    var hr = Math.floor(min/60); 
    var day = Math.floor(hr/24); 
    min %= 60; 
    sec %= 60; 
    hr %= 24; 
    $('#'+ID+' '+sd).text (sec+ 'secs'); 
    $('#'+ID+' '+md).text (min+ 'mins'); 
    $('#'+ID+' '+hrd).text(hr+ 'hrs'); 
    var CountDown = setInterval('Cdtd(x,hrd,md,sd)',1000); 

} 
​ 
+0

あなたのコードで[Fiddle](http://jsfiddle.net/)を設定できますか? – Zuul

+0

http://jsfiddle.net/e8LCV/その動作していません.... –

+0

x、hrd、md、sd、IDの値は "x、hrd、md、sd、ID"ですか? – Daedalus

答えて

1

私はついにあなたのコードが正常に動作しましたhere, with a few modifications。また、要素に同じIDを使用しないように注意してください。それぞれがユニークである必要があります。

+0

あなたは最高です。あなたがPHPエラーを持って次回私はあなたのためにそれを世話してください! –

0

このjavascript libraryを試してみてください。彼のコードは、読んで簡単にカスタマイズできます。

関連する問題