最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

html - Javascript Count Days From Today - Stack Overflow

programmeradmin1浏览0评论

I would like a simple text box input of a date in the past and then for it to display how many days it is from today's date. I have found several examples of how to use javascript to do it between two dates that you input, but not with only doing one date and today's.

The current date to track is 4/2/2010, but it will change over time.

I would like a simple text box input of a date in the past and then for it to display how many days it is from today's date. I have found several examples of how to use javascript to do it between two dates that you input, but not with only doing one date and today's.

The current date to track is 4/2/2010, but it will change over time.

Share Improve this question asked Mar 13, 2012 at 13:53 Ty.Ty. 1871 gold badge2 silver badges13 bronze badges 2
  • Just pass today's date as one of the values. – Chetter Hummin Commented Mar 13, 2012 at 14:01
  • possible duplicate of How to calculate the number of days between two dates using javascript – Aaron Digulla Commented Mar 13, 2012 at 14:13
Add a ment  | 

2 Answers 2

Reset to default 1

If you don't care about the leap second (:)), you can simply subtract the current date from the date back then, which gets you the difference in milliseconds, and then divide the difference by the amount of milliseconds that fits in one day:

var then = new Date(2010, 03, 02), // month is zero based
    now  = new Date;               // no arguments -> current date

// 24 hours, 60 minutes, 60 seconds, 1000 milliseconds
Math.round((now - then) / (1000 * 60 * 60 * 24)); // round the amount of days
// result: 712

Here is a script I use for countdown timers. You can take out whatever parts you dont need to display just a day, time etc.

dateFuture = new Date(2029,2,4,23,59,59);
        
        function GetCount(){
        
                dateNow = new Date();
                //grab current date
                amount = dateFuture.getTime() - dateNow.getTime();                
                //calc milliseconds between dates
                delete dateNow;
        
                // time is already past
                if(amount < 0){
                        document.getElementById('countbox').innerHTML="Now!";
                }
                // date is still good
                else{
                		
                        days=0;hours=0;mins=0;secs=0;out="";
        
                        amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
        
                        days=Math.floor(amount/86400);//days
                        amount=amount%86400;
        
                        hours=Math.floor(amount/3600);//hours
                        amount=amount%3600;
        
                        mins=Math.floor(amount/60);//minutes
                        amount=amount%60;
        
                        secs=Math.floor(amount);//seconds
        
                        if(days != 0){out += days +" day"+((days!=1)?"s":"")+",<br />";}
                        if(days != 0 || hours != 0){out += hours +" hour"+((hours!=1)?"s":"")+",<br />";}
                        if(days != 0 || hours != 0 || mins != 0){out += mins +" minute"+((mins!=1)?"s":"")+",<br />";}
                        out += secs +" seconds";
                        document.getElementById('countbox').innerHTML=out;
        
                        setTimeout("GetCount()", 1000);
                }
        }
        
        window.onload=function(){GetCount();}//call when everything has loaded
<div id="countbox"><div>

发布评论

评论列表(0)

  1. 暂无评论