<body>
<h1 id="haha">&nbsp;</h1>
</body>
<input name=text1>
<input name=button1 type=button value="显示" onclick=go()>
<script>
function go()
{

c=document.getElementById("text1").value.split(":")
var b=new Date()
var a=new Date(b.getYear(),b.getMonth(),b.getDate(),c[0],c[1],c[2])

strTime="还有<font color=red>"+Math.floor((a-b)/3600000)+"个小时"+"、"+Math.floor(((a-b)%3600000)/60000)+"个分钟"+"、"+((((a-b)%3600000)%60000)/1000)+"秒</font>"
document.getElementById("haha").innerHTML=strTime
setTimeout("go()",1000);
}
</script>

解决方案 »

  1.   

    为了便于测试把要求显示的分钟该成了秒
    <body>
    <div id='view'>请在输入结束时间(时:分)<input type=text onkeyup='foo(this.value)'></div>
    <script>
    function foo(v) {
      if(/\d\d:\d\d/.test(v)) {
        var d = new Date();
        t = d.getTime();
        var a = v.split(':');
        d.setHours(a[0], a[1]);
        if(t < d.getTime()) {
          t = (d.getTime() - t)/1000;
          setInterval('show()', 1000);
        }
      }
    }function show() {
      view.innerHTML = t + '秒';
      t--;
    }
    </script>
      

  2.   

    to:hbhbhbhbhb1021(天外水火(我要多努力)):非常谢谢!可是这不是我要的形式。
    我要的是当输入完结束时间回车后,界面时时显示与当前时间差的分钟数。
    JS学的不好。你的程序在我这里试了一下出NAN的错。请帮我看看再谢!
      

  3.   

    <input id=v value="16:00"><input type=button onclick="javascript:setEndTime()" value="设置结束时间"><div id=o></div>
    <script>
       function setEndTime(){
    var end=new Date((new Date()).toDateString()+" "+v.value+":00")
    o.innerText="剩余时间:"+(Math.round((end-(new Date()))/60000))+"分种"
    window.setTimeout(setEndTime,10*1000)  
    }   
    </script>每10秒刷新一次结果
      

  4.   

    to xuzuning(唠叨):非常感谢!我就是这个意思。
    可是没有显示倒数的分钟数。不知道为什么?
      

  5.   

    Go_Rush(阿舜) :太感动了!谢谢!就是这个了!哈哈