2014-08-27 97 views
0

如何使来自Date对象的数据与来自HTML的字符串(“hh:mm”)数据之间的JS中的数学运算成为可能?使用Date对象和<input type =“time”>的数学运算>

代码用于使用getHours,getMinutes和getSeconds方法从输入时间字段到当前时间进行倒计时。或者最好使用其他标签和/或方法?

回答

0

如何使用jQuery插件为了在从现场获得数据后进行倒计时?看看http://keith-wood.name/countdown.html

编辑:

我用下面的JS代码,使http://jsfiddle.net/oxnmvhLc/2/

function startCountdown(nowObj, timeObj) { 
    setInterval(function() { 
     var nowObj = new Date(); 
     if(nowObj > timeObj) { 
      timeObj.setDate(timeObj.getDate() + 1); 
     } 
     var difference = (timeObj - nowObj)/1000; 
     var seconds = Math.floor(difference % 60); 
     var minutes = Math.floor((difference/60) % 60); 
     var hours = Math.floor((difference/3600) % 24); 
     $('#countdown').html('There are ' + hours + ' hours, ' + minutes + ' minutes and ' + seconds + ' seconds.'); 
    }, 1000); 
} 

$('#btn').click(function() { 
    var time = $('#time').val().split(':'); 
    var nowObj = new Date(); 
    var timeObj = new Date(nowObj.getFullYear(), nowObj.getMonth(), nowObj.getDate(), time[0], time[1], 0, 0); 
    $('#countdown').html(''); 
    startCountdown(nowObj, timeObj); 
}); 
+0

谢谢你的链接,但最重要的一点是让倒计时没有任何框架。我只想使用JS从内部理解所有的过程。 – vk5 2014-08-27 13:18:26

+0

好的,在这种情况下,你能举出一个更具体的例子来说明你想达到的目标。 – Zak 2014-08-27 14:24:25

+0

它应该是像下面的东西。当你在中选择一段时间时,然后启动JS。它采用所选的时间字符串(例如“15:45”),然后从当前时间开始倒计时。如果您输入的时间是15:45,当前时间是12:00,则JS会取得差异(3:45)并开始倒计时:“剩下3小时44米”,“剩下3小时43米”等等。 – vk5 2014-08-27 19:39:21

相关问题