Javascript 使用jquerystopwatch在表单提交时将毫秒从计时器传递到输入
我正试图从这个jQuery秒表库中获取毫秒值 毫秒值没有被记录,除了在GitHub中声明 使经过的毫秒数在数据中可用#2 … 使用$().data('stopwatch')['passed'] 我试图通过以下代码以这种方式访问毫秒(它在Wordpress中,因此缺少$signs) 第一个问题实际上是获取毫秒值,然后通过单击按钮将其传递给输入值。我假设一旦我实际得到毫秒值,下面的代码就可以工作了,但我对jQuery还很陌生,所以最好也检查一下它的合理性Javascript 使用jquerystopwatch在表单提交时将毫秒从计时器传递到输入,javascript,jquery,wordpress,Javascript,Jquery,Wordpress,我正试图从这个jQuery秒表库中获取毫秒值 毫秒值没有被记录,除了在GitHub中声明 使经过的毫秒数在数据中可用#2 … 使用$().data('stopwatch')['passed'] 我试图通过以下代码以这种方式访问毫秒(它在Wordpress中,因此缺少$signs) 第一个问题实际上是获取毫秒值,然后通过单击按钮将其传递给输入值。我假设一旦我实际得到毫秒值,下面的代码就可以工作了,但我对jQuery还很陌生,所以最好也检查一下它的合理性 jQuery( "#question" ).
jQuery( "#question" ).submit(function( event ) {
jQuery( "#timerValue" ).val(.data('stopwatch')['elapsed']));
event.preventDefault();
});
HTML表单元素
<input type="hidden" name="timerValue" id="timerValue" value="" />
通过从这里切换到jQuery计时器库,我成功地实现了我想要做的事情 下面的代码正是我所需要的
function pad(number, length) {
var str = '' + number;
while (str.length < length) {str = '0' + str;}
return str;
}
function formatTime(time) {
time = time / 10;
var min = parseInt(time / 6000),
sec = parseInt(time / 100) - (min * 60),
hundredths = pad(time - (sec * 100) - (min * 6000), 2);
// Switch for more accurate output
// return (min > 0 ? pad(min, 2) : "00") + ":" + pad(sec, 2) + ":" + hundredths;
return (min > 0 ? pad(min, 2) : "00") + ":" + pad(sec, 2);
}
var quizStopwatch = new (function() {
var $stopwatch;
var incrementTime = 70;
var currentTime = 0;
$(function() {
$stopwatch = $('.quizTimerSpan');
quizStopwatch.Timer = $.timer(updateTimer, incrementTime, true);
});
function updateTimer() {
var timeString = formatTime(currentTime);
$stopwatch.html(timeString);
currentTime += incrementTime;
document.title = timeString;
$("#timerValue").val(currentTime);
}
});
功能板(编号、长度){
var str=''+数字;
而(str.length0)焊盘(最小值,2):“00”)+:“+焊盘(秒,2)+”:“+百分之一;
返回(最小值>0)焊盘(最小值,2):“00”)+:“+焊盘(第2节);
}
var quizStopwatch=new(函数(){
var$秒表;
var增量时间=70;
var currentTime=0;
$(函数(){
$stopwatch=$('quizTimerSpan');
quizStopwatch.Timer=$.Timer(updateTimer,incrementTime,true);
});
函数updateTimer(){
var timeString=formatTime(currentTime);
$stopwatch.html(timeString);
currentTime+=递增时间;
document.title=时间字符串;
$(“#timerValue”).val(当前时间);
}
});
作为奖励,我还可以在每个间隔设置页面的标题
<input type="hidden" name="timerValue" id="timerValue" value="" />
function pad(number, length) {
var str = '' + number;
while (str.length < length) {str = '0' + str;}
return str;
}
function formatTime(time) {
time = time / 10;
var min = parseInt(time / 6000),
sec = parseInt(time / 100) - (min * 60),
hundredths = pad(time - (sec * 100) - (min * 6000), 2);
// Switch for more accurate output
// return (min > 0 ? pad(min, 2) : "00") + ":" + pad(sec, 2) + ":" + hundredths;
return (min > 0 ? pad(min, 2) : "00") + ":" + pad(sec, 2);
}
var quizStopwatch = new (function() {
var $stopwatch;
var incrementTime = 70;
var currentTime = 0;
$(function() {
$stopwatch = $('.quizTimerSpan');
quizStopwatch.Timer = $.timer(updateTimer, incrementTime, true);
});
function updateTimer() {
var timeString = formatTime(currentTime);
$stopwatch.html(timeString);
currentTime += incrementTime;
document.title = timeString;
$("#timerValue").val(currentTime);
}
});