0

http://jsfiddle.net/zAFND/640/

私が持っているjsfiddleで、私が問題にしているのは応答時間です。1秒ではなく2秒上昇しています。これの問題は、2つの質問があるため、各応答時間のテキスト入力で両方の質問の秒数がカウントされるため、毎回2秒ずつ増加すると思います。しかし、私の質問は、タイマーが正常にカウントアップするようにこれをどのように分類するかです。

応答時間のコード:

`var response =" 00:00:00 "、responseparts = response.split(':')、responsehours = + responseparts [0]、responseminutes = + responseparts [1]、responseseconds = + responseparts [2];

     function correctResponse(responsenum) {
         return (responsenum < 10) ? ("0" + responsenum) : responsenum;
     }

 var responsetimer = [];
 $('.queWrap').each(function(index, element) {
 var wrap=$(this),   
 input = wrap.find('.responseTime'),
 checkbox=wrap.find('#ck-button').find('input'),
 clickInput=wrap.find('.mouseClick');


     responsetimer[index] = setInterval(function () {
     responseseconds++;
     if (responseseconds == 60) {
         responseseconds = 00;
         responseminutes++;

         if (responseminutes == 60) {
             responseminutes = 00;
             responsehours++;

             if (responsehours <= 24) {
                 clearInterval(responsetimer);
                 return;
             }

         }
     }
     input.val(correctResponse(responsehours) + ":" + correctResponse(responseminutes) + ":" + correctResponse(responseseconds));
 }, 1000);

`

4

1 に答える 1

4

のvar宣言を移動します

response = "00:00:00",
responseparts = response.split(':'),
responsehours = +responseparts[0],
responseminutes = +responseparts[1],
responseseconds = +responseparts[2];

各コールバック内

http://jsfiddle.net/h8srH/1/

また、ckボタンIDをクラスに変更します。IDは一意であることが意図されています。

于 2013-02-10T04:23:46.947 に答える