Javascript 倒计时小时和分钟

Javascript 倒计时小时和分钟,javascript,jquery,Javascript,Jquery,我有今天的时间价值。我需要一个倒计时,显示还有多少小时和分钟。当用户在页面上时,我需要这个倒计时来更新分钟数 我做了一个快速搜索,看到了很多插件,但我认为这可能是非常简单的,没有额外的脚本 Time left <span class="remainingTime"></span> var day = new Date(), now = d.getHours() + ":" + d.getMinutes(), end = '23:00'; 剩余时间 va

我有今天的时间价值。我需要一个倒计时,显示还有多少小时和分钟。当用户在页面上时,我需要这个倒计时来更新分钟数

我做了一个快速搜索,看到了很多插件,但我认为这可能是非常简单的,没有额外的脚本

Time left <span class="remainingTime"></span>

var day = new Date(),
    now = d.getHours() + ":" + d.getMinutes(),
    end = '23:00';
剩余时间
var day=新日期(),
现在=d.getHours()+:“+d.getMinutes(),
完='23:00';

我想我需要某种转换,可能是毫秒,以获得显示的初始时间,然后可能设置超时并减少60000

谷歌有100万条搜索结果显示Javascript小时/分钟倒计时脚本。我在10秒内找到了这个脚本,并在30秒内完成了它的工作。在下次提问之前,你真的应该做更多的研究。以下是第一个结果之一的脚本:

function DaysHMSCounter(initDate, id){
    this.counterDate = new Date(initDate);
    this.container = document.getElementById(id);
    this.update();
}

DaysHMSCounter.prototype.calculateUnit=function(secDiff, unitSeconds){
    var tmp = Math.abs((tmp = secDiff/unitSeconds)) < 1? 0 : tmp;
    return Math.abs(tmp < 0 ? Math.ceil(tmp) : Math.floor(tmp));
}

DaysHMSCounter.prototype.calculate=function(){
    var secDiff = Math.abs(Math.round(((new Date()) - this.counterDate)/1000));
    this.days = this.calculateUnit(secDiff,86400);
    this.hours = this.calculateUnit((secDiff-(this.days*86400)),3600);
    this.mins = this.calculateUnit((secDiff-(this.days*86400)-(this.hours*3600)),60);
    this.secs = this.calculateUnit((secDiff-(this.days*86400)-(this.hours*3600)-(this.mins*60)),1);
}

DaysHMSCounter.prototype.update=function(){ 
    this.calculate();
    this.container.innerHTML =
        " <strong>" + this.days + "</strong> " + (this.days == 1? "day" : "days") +
        " <strong>" + this.hours + "</strong> " + (this.hours == 1? "hour" : "hours") +
        " <strong>" + this.mins + "</strong> " + (this.mins == 1? "min" : "mins") +
        " <strong>" + this.secs + "</strong> " + (this.secs == 1? "sec" : "secs");
    var self = this;
    setTimeout(function(){self.update();}, (1000));
}
函数dayshmcounter(initDate,id){
this.counterDate=新日期(initDate);
this.container=document.getElementById(id);
这个.update();
}
dayshmcounter.prototype.calculateUnit=函数(secDiff,单位秒){
var tmp=Math.abs((tmp=secDiff/unitSeconds))<1?0:tmp;
返回Math.abs(tmp<0?Math.ceil(tmp):Math.floor(tmp));
}
dayshmcounter.prototype.calculate=函数(){
var secDiff=Math.abs(Math.round(((new Date())-this.counterDate)/1000));
this.days=this.calculateUnit(secDiff,86400);
this.hours=this.calculateUnit((secDiff-(this.days*86400)),3600);
this.mins=this.calculateUnit((secDiff-(this.days*86400)-(this.hours*3600)),60);
this.secs=this.calculateUnit((secDiff-(this.days*86400)-(this.hours*3600)-(this.mins*60)),1);
}
dayshmcounter.prototype.update=function(){
这个.calculate();
this.container.innerHTML=
“”+this.days+”“+(this.days==1?”day:“days”)+
“”+this.hours+”“+(this.hours==1?”小时):“小时”)+
“”+this.mins+”“+(this.mins==1?”min:“min”)+
“”+this.secs+”“+(this.secs==1?”秒):“secs”);
var self=这个;
setTimeout(函数(){self.update();},(1000));
}
像这样使用它:

<div id="myCounter"></div>

<script>
new DaysHMSCounter('December 25, 2015 00:00:00', 'myCounter');
</script>

新DayshmCounter('2015年12月25日00:00:00,'myCounter');


我相信您可以修改它以删除“天”和“秒”部分。

这个怎么样?小而简单

功能设置计时器(小时、分钟){
var end=新日期();
完二〇〇四年十二月十四日(星期四);
结束。设置分钟数(分钟);
var secondsLeft=(结束-新日期())/60000;
var hoursLeft=数学楼层(秒英尺/60);
var minutesLeft=数学整轮(第二个小数点为%60);
$('.remainingTime').text(hoursleet+':'+minutesleet);
}
设定计时器(23,59);
setInterval(函数(){
设定计时器(23,59);
}, 1000);


时间还剩
嗯。。。你试过你的建议了吗?你是怎么做到的?它做了你想要的吗?这是我理论上的头脑风暴。我迷路了…写出来,如果它不起作用,你不能修复控制台错误,我们至少会更接近你。是的,就像鹅说的,给它一个旋转伙伴,让我们知道你进展如何。