2016-05-21 73 views
-2

私は現在、見出しのカウントダウンタイマーでウェブサイト開発しています:http://iphone.myhandykey.com/JavaScriptのカウントダウンタイマー、特定の時間に毎日の

現在のタイマがちょうど12hrs +数分ですが...私は希望してカウントダウンタイマーが表示されますです現在のビジターのタイムゾーンで午後11時までの残り時間。それは可能ですか?ありがとう!ここで

Here is the JavaScript: 



function startTimer(duration, display) { 
    var timer = duration, hours, minutes, seconds; 
     setInterval(function() { 



     hours = parseInt(((timer/60)/60) % 60, 10); 



     minutes = parseInt((timer/60)%60, 10); 
     seconds = parseInt(timer % 60, 10); 

     hours = hours < 10 ? "0" + hours : hours; 
     minutes = minutes < 10 ? "0" + minutes : minutes; 
     seconds = seconds < 10 ? "0" + seconds : seconds; 

     display.textContent = hours + ":" + minutes + ":" + seconds; 



     if (--timer < 0) { 
      timer = duration; 
     } 
    }, 1000); 
} 

window.onload = function() { 
    var onehour = 60 * 600 * 1.231, 
     display = document.querySelector('#time'); 
    startTimer(onehour, display); 
}; 

はHTMLです:

<span id=time></span> 

EDIT:訪問者の現在の時刻は、例えば23:40であれば、それは左23hrs & 20分が表示されるはずです。..

+0

あなたのコードを共有し、問題を最善に見つけてください。その後、コミュニティは残りのことを行うことができます。 –

+0

アレックスありがとうございます。私はスクリプトを追加しました。 – user329072

+0

ユーザーがこのページにアクセスして、現地時間の午後11時19分に既に表示されている場合はどうなりますか?負の時計を表示するか、24:41:00に決定するか? – smcd

答えて

1

(function() { 
 
    var start = new Date; 
 
    start.setHours(23, 0, 0); // 11pm 
 

 
    function pad(num) { 
 
    return ("0" + parseInt(num)).substr(-2); 
 
    } 
 

 
    function tick() { 
 
    var now = new Date; 
 
    if (now > start) { // too late, go to tomorrow 
 
     start.setDate(start.getDate() + 1); 
 
    } 
 
    var remain = ((start - now)/1000); 
 
    var hh = pad((remain/60/60) % 60); 
 
    var mm = pad((remain/60) % 60); 
 
    var ss = pad(remain % 60); 
 
    document.getElementById('time').innerHTML = 
 
     hh + ":" + mm + ":" + ss; 
 
    setTimeout(tick, 1000); 
 
    } 
 

 
    document.addEventListener('DOMContentLoaded', tick); 
 
})();
Only <span id='time'></span> left!

+0

ありがとうございました!それは私の問題を解決しました。 – user329072

0

このような何か:

$(document).ready(function() { 
     var mg = new Date(2016, 5, 21, 0, 0, 0, 0); 
     var tmr = window.setInterval(function() { 
      var d = new Date(); 
      var dif = mg - d; 
      var s = parseInt(dif/1000); 
if (s < 0) { 
    document.getElementById('spCnt').innerHTML = 'Event starts'; 
    window.clearInterval(tmr); 
    return; 
} 
      var sec = s % 60; 
      var m = parseInt(s/60); 
      var min = m % 60; 
      var h = parseInt(m/60); 
      var hour = h % 24; 
      d = parseInt(h/24); 

      document.getElementById('spCnt').innerHTML = d + ' days ' + hour + ' hours ' + min + ' min and ' + sec + ' sec remaining'; 
     }, 1000); 
    }); 
+0

ありがとうございます。 htmlコードを入手できますか? – user329072

+0

htmlコードですか?あなたがそうしたいならば。 '' –

関連する問題