显示毫秒的javascript倒计时
我想做一个倒计时,并希望以分钟:秒:毫秒的格式显示。我使用jquery插件进行了倒计时,但它只显示分钟:秒格式。 有什么方法可以使它正确吗?显示毫秒的javascript倒计时,javascript,jquery,ajax,countdown,Javascript,Jquery,Ajax,Countdown,我想做一个倒计时,并希望以分钟:秒:毫秒的格式显示。我使用jquery插件进行了倒计时,但它只显示分钟:秒格式。 有什么方法可以使它正确吗? 非常感谢 尝试设置格式参数- 进一步阅读,这个插件不会运行毫秒。此时,您必须编辑实际的插件代码或查找新插件。尝试设置格式参数- 进一步阅读,这个插件不会运行毫秒。此时,您要么编辑实际的插件代码,要么找到一个新插件。如果您想制作自己的计时器。 阅读前面的问题 如果您想制作自己的计时器。 阅读前面的问题 我完全同意@Matt Ball的评论。这也可能导致浏览器
非常感谢 尝试设置格式参数-
进一步阅读,这个插件不会运行毫秒。此时,您必须编辑实际的插件代码或查找新插件。尝试设置格式参数-
进一步阅读,这个插件不会运行毫秒。此时,您要么编辑实际的插件代码,要么找到一个新插件。如果您想制作自己的计时器。 阅读前面的问题
如果您想制作自己的计时器。 阅读前面的问题
我完全同意@Matt Ball的评论。这也可能导致浏览器崩溃 你为什么不试试这个解决方案呢
我完全同意@Matt Ball的评论。这也可能导致浏览器崩溃 你为什么不试试这个解决方案呢
大家好,我为自己开发了一个代码,下面是代码 计数20秒
var _STOP =0;
var value=1999;
function settimer()
{
var svalue = value.toString();
if(svalue.length == 3)
svalue = '0'+svalue;
else if(svalue.length == 2)
svalue = '00'+svalue;
else if(svalue.length == 1)
svalue = '000'+svalue;
else if(value == 0)
svalue = '0000';
document.getElementById('cn1').innerHTML = svalue[0];
document.getElementById('cn2').innerHTML = svalue[1];
document.getElementById('cn3').innerHTML = svalue[2];
document.getElementById('cn4').innerHTML = svalue[3];
value--;
if (_STOP==0 && value>=0) setTimeout("settimer();", 10);
}
setTimeout("settimer()", 10);
嗨,伙计们,我已经为自己开发了一个代码,使用下面的代码 计数20秒
var _STOP =0;
var value=1999;
function settimer()
{
var svalue = value.toString();
if(svalue.length == 3)
svalue = '0'+svalue;
else if(svalue.length == 2)
svalue = '00'+svalue;
else if(svalue.length == 1)
svalue = '000'+svalue;
else if(value == 0)
svalue = '0000';
document.getElementById('cn1').innerHTML = svalue[0];
document.getElementById('cn2').innerHTML = svalue[1];
document.getElementById('cn3').innerHTML = svalue[2];
document.getElementById('cn4').innerHTML = svalue[3];
value--;
if (_STOP==0 && value>=0) setTimeout("settimer();", 10);
}
setTimeout("settimer()", 10);
试试这个:
HTML:
试试这个:
HTML:
我这样做(通用计数器从N到X(X>N)):
var dynamicAccountedDNewValue=20;
var-currentDynamicUpdater;
函数dynamicCounterForValueForControlUpdater(_UpdateData){
_updateData.from+=dynamicAccountedDNewValue;
如果(_updatedata.from>_updatedata.to){
_updaterData.from=\u updaterData.to;
}
_updatedata.c.html(_updatedata.from.toString());
如果(_updatedata.from<_updatedata.to){
currentDynamicUpdater=setTimeout(
DynamicAccounterForValueForControlUpdater,
10,
{
c:_updatedata.c,
from:_updatedata.from,
收件人:_updatedata.to
}
);
}
否则{
clearTimeout(CurrentDynamicUpdate);
}
返回;
}
//\u c->jQuery对象(div,span)
//_from->起始编号
//_to->结束号码
函数dynamicAccounterForValueForControl(_c、_from、_to){
clearTimeout(CurrentDynamicUpdate);
DynamicAccounterForValueForControlUpdater(
{
c:c,
from:_from,
致:(u to)
}
);
返回;
}
编辑:更新版本(更灵活-适用于N个元素相继):
(输入元素是使其成为动态计数的元素数组)
var dynamicCounterTimeout=10;
var-currentDynamicUpdater;
函数odcArray(_odca){
this.odca=_odca;
返回;
}
函数odc(_c,_from,_to){
this.c=_c;//$(“#控制_id”)
this.from=\u from;//例如,N
this.to=_to;//例如M=>(M>=N)
var di=parseInt(_至/45,10);
如果(di<1){
di=1;
}
this.dynamicInc=di;
返回;
}
函数dynamicCounterForValueForControlUpdater(_odca){
如果(
_odca.odca==null
||
!\u odca.odca.length
) {
clearTimeout(CurrentDynamicUpdate);
返回;
}
var o=_odca.odca[0];
o、 from+=o.dynamicInc;
如果(o.from>o.to){
o、 从=到;
_odca.odca.shift();//删除第一个元素
}
o、 c.html(o.from.toString());
currentDynamicUpdater=setTimeout(
DynamicAccounterForValueForControlUpdater,
dynamicCounterTimeout,
_奥德卡
);
返回;
}
函数dynamicCounterForValueForControl(_odca){
clearTimeout(CurrentDynamicUpdate);
//将所有计数器设置为默认值
对于(变量i=0;i<\u odca.odca.length;i++){
_odca.odca[i].c.html(_odca.odca[i].from.toString());
}
DynamicAccounterForValueForControlUpdater(
_奥德卡
);
返回;
}
我是这样做的(通用计数器从N到X(X>N)):
var dynamicAccountedDNewValue=20;
var-currentDynamicUpdater;
函数dynamicCounterForValueForControlUpdater(_UpdateData){
_updateData.from+=dynamicAccountedDNewValue;
如果(_updatedata.from>_updatedata.to){
_updaterData.from=\u updaterData.to;
}
_updatedata.c.html(_updatedata.from.toString());
如果(_updatedata.from<_updatedata.to){
currentDynamicUpdater=setTimeout(
DynamicAccounterForValueForControlUpdater,
10,
{
c:_updatedata.c,
from:_updatedata.from,
收件人:_updatedata.to
}
);
}
否则{
clearTimeout(CurrentDynamicUpdate);
}
返回;
}
//\u c->jQuery对象(div,span)
//_from->起始编号
//_to->结束号码
函数dynamicAccounterForValueForControl(_c、_from、_to){
clearTimeout(CurrentDynamicUpdate);
DynamicAccounterForValueForControlUpdater(
{
c:c,
from:_from,
致:(u to)
}
);
返回;
}
编辑:更新版本(更灵活-适用于N个元素相继):
(输入元素是使其成为动态计数的元素数组)
var dynamicCounterTimeout=10;
var-currentDynamicUpdater;
函数odcArray(_odca){
this.odca=_odca;
返回;
}
函数odc(_c,_from,_to){
this.c=_c;//$(“#控制_id”)
this.from=\u from;//例如,N
this.to=_to;//例如M=>(M>=N)
var di=parseInt(_至/45,10);
如果(di<1){
di=1;
}
this.dynamicInc=di;
返回;
}
函数dynamicCounterForValueForControlUpdater(_odca){
如果(
_odca.odca==null
||
!\u odca.odca.length
) {
氯
var el = document.getElementById('timer');
var milliSecondsTime = 10000;
var timer;
el.innerHTML = milliSecondsTime/1000;
timer = setInterval(function(){
milliSecondsTime = milliSecondsTime - 1000;
if(milliSecondsTime/1000 == 0) {
clearTimeout(timer);
el.innerHTML = 'BOOOOM';
}
else {
el.innerHTML = milliSecondsTime/1000;
}
},1000);
var dynamicCounterAddNewValue = 20;
var currentDynamicUpdater;
function dynamicCounterForValueForControlUpdater(_updaterData) {
_updaterData.from += dynamicCounterAddNewValue;
if (_updaterData.from > _updaterData.to) {
_updaterData.from = _updaterData.to;
}
_updaterData.c.html(_updaterData.from.toString());
if (_updaterData.from < _updaterData.to) {
currentDynamicUpdater = setTimeout(
dynamicCounterForValueForControlUpdater,
10,
{
c: _updaterData.c,
from: _updaterData.from,
to: _updaterData.to
}
);
}
else {
clearTimeout(currentDynamicUpdater);
}
return;
}
// _c -> jQuery object (div,span)
// _from -> starting number
// _to -> ending number
function dynamicCounterForValueForControl(_c, _from, _to) {
clearTimeout(currentDynamicUpdater);
dynamicCounterForValueForControlUpdater(
{
c: _c,
from: _from,
to: _to
}
);
return;
}
var dynamicCounterTimeout = 10;
var currentDynamicUpdater;
function odcArray(_odca) {
this.odca = _odca;
return;
}
function odc(_c, _from, _to) {
this.c = _c; // $('#control_id')
this.from = _from; // e.g. N
this.to = _to; // e.g. M => (M >= N)
var di = parseInt(_to / 45, 10);
if (di < 1) {
di = 1;
}
this.dynamicInc = di;
return;
}
function dynamicCounterForValueForControlUpdater(_odca) {
if (
_odca.odca === null
||
!_odca.odca.length
) {
clearTimeout(currentDynamicUpdater);
return;
}
var o = _odca.odca[0];
o.from += o.dynamicInc;
if (o.from > o.to) {
o.from = o.to;
_odca.odca.shift(); // Remove first element
}
o.c.html(o.from.toString());
currentDynamicUpdater = setTimeout(
dynamicCounterForValueForControlUpdater,
dynamicCounterTimeout,
_odca
);
return;
}
function dynamicCounterForValueForControl(_odca) {
clearTimeout(currentDynamicUpdater);
// SETUP all counters to default
for (var i = 0; i < _odca.odca.length; i++) {
_odca.odca[i].c.html(_odca.odca[i].from.toString());
}
dynamicCounterForValueForControlUpdater(
_odca
);
return;
}