Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery时间计数_Javascript_Jquery_Timer - Fatal编程技术网

Javascript jQuery时间计数

Javascript jQuery时间计数,javascript,jquery,timer,Javascript,Jquery,Timer,下面是一个场景,我有一个计算用户花费的时间的时间。我想要的是从计时器中获得准确的时间。例如,用户参加考试,然后在他/她参加考试后,将提交所花费的时间(例如1小时25分钟23秒)。请看下面我的代码 $(文档).ready(函数(){ 变量d; setInterval(函数(){ d=新日期(); 日期=d.getHours()+':'+d.getMinutes()+':'+d.getSeconds(); $('#timetake').val(日期); }, 1000); }); 您可以将计数器保

下面是一个场景,我有一个计算用户花费的
时间的时间。我想要的是从计时器中获得准确的
时间。例如,用户参加考试,然后在他/她参加考试后,将提交所花费的
时间
(例如
1小时25分钟23秒
)。请看下面我的代码

$(文档).ready(函数(){
变量d;
setInterval(函数(){
d=新日期();
日期=d.getHours()+':'+d.getMinutes()+':'+d.getSeconds();
$('#timetake').val(日期);
}, 1000);
});

您可以将计数器保持在设定的间隔内,而不是每秒获取日期,该间隔将每秒更新一次。在提交时,您可以执行除法和模数运算以获得所需的准确时间

范例

$(document).ready(function(){
     var timer =0;
     setInterval(function(){
     Timer +=1;
     // Code for display in hr mm        and ss
      $('#timeTaken').val(dates);
     }, 1000'
}))

您还可以使用moment.js转换秒时间值 希望这对你有帮助。
快乐编码

您可以将计数器保持在设定的间隔内,该间隔将每秒更新一次,而不是每秒获取日期。在提交时,您可以执行除法和模数运算以获得所需的准确时间

范例

$(document).ready(function(){
     var timer =0;
     setInterval(function(){
     Timer +=1;
     // Code for display in hr mm        and ss
      $('#timeTaken').val(dates);
     }, 1000'
}))

您还可以使用moment.js转换秒时间值 希望这对你有帮助。
快乐编码

这里是解决方案的提琴

Ans解决方案如下:

$(document).ready(function(){
  var seconds = 0, minutes = 0 , hours = 0;
  setInterval(function(){
    seconds++;
    if(seconds == 60){
      minutes++
      seconds = 0;
    }

    if(minutes == 60){
      hours++
      minutes = 0;
    }
    console.log(hours, minutes, seconds);
    $('#timeTaken').val(`${hours}:${minutes}:${seconds}`);
  }, 1000);

});

这是解决问题的办法

Ans解决方案如下:

$(document).ready(function(){
  var seconds = 0, minutes = 0 , hours = 0;
  setInterval(function(){
    seconds++;
    if(seconds == 60){
      minutes++
      seconds = 0;
    }

    if(minutes == 60){
      hours++
      minutes = 0;
    }
    console.log(hours, minutes, seconds);
    $('#timeTaken').val(`${hours}:${minutes}:${seconds}`);
  }, 1000);

});

我真的看不出在那里使用输入有什么意义,您可以在一个范围内显示,当表单提交时,花一段时间将其与其他数据一起发送。无论如何,这应该对你有用:

$(document).ready(function () {
    var time_start = new Date();
    setInterval(function () {
        var time_end      = new Date();
        var time_diff = (time_end - time_start);

        // hours
        var hours     = Math.floor(time_diff / 1000 / 60 / 60);

        // minutes
        time_diff     = time_diff - hours * 1000 * 60 * 60;
        var minutes   = Math.floor(time_diff / 1000 / 60);

        // seconds
        time_diff     = time_diff - minutes * 1000 * 60;
        var seconds   = Math.floor(time_diff / 1000);

        renderTime(hours, minutes, seconds);
    }, 1000);
});

function renderTime (hrs, min, sec) {
    var str = convertTime(hrs) + ":" + convertTime(min) + ":" + convertTime(sec);
    $("#timeTaken").val(str);
}

function convertTime (val) {
    return val < 10 ? "0" + val : val;
} 
要使用
$.cookie()
,必须首先包含jQuery cookie插件

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>

不带饼干的工作小提琴:


处理cookie:

我真的不认为在这里使用输入有什么意义,您可以在一个范围内显示,当表单提交时,花一段时间将其与其他数据一起发送。无论如何,这应该对你有用:

$(document).ready(function () {
    var time_start = new Date();
    setInterval(function () {
        var time_end      = new Date();
        var time_diff = (time_end - time_start);

        // hours
        var hours     = Math.floor(time_diff / 1000 / 60 / 60);

        // minutes
        time_diff     = time_diff - hours * 1000 * 60 * 60;
        var minutes   = Math.floor(time_diff / 1000 / 60);

        // seconds
        time_diff     = time_diff - minutes * 1000 * 60;
        var seconds   = Math.floor(time_diff / 1000);

        renderTime(hours, minutes, seconds);
    }, 1000);
});

function renderTime (hrs, min, sec) {
    var str = convertTime(hrs) + ":" + convertTime(min) + ":" + convertTime(sec);
    $("#timeTaken").val(str);
}

function convertTime (val) {
    return val < 10 ? "0" + val : val;
} 
要使用
$.cookie()
,必须首先包含jQuery cookie插件

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>

不带饼干的工作小提琴:


处理cookie:

您能提供一些代码片段吗?或者JSFIDLE?您能提供一些代码片段吗?或者是西德?很好!太好了,太好了!太好了,太好了!你能用snippet或jsFiddle来写吗?@Jonjie给你,哇!太棒了:)太棒了!你能用snippet或jsFiddle来写吗?@Jonjie给你,哇!真棒:)