Javascript 我怎么能有一个实时计时器,在3秒钟的循环内每秒钟更新一次?

Javascript 我怎么能有一个实时计时器,在3秒钟的循环内每秒钟更新一次?,javascript,Javascript,我用的是这样的代码 setInterval(函数(){ //代码在这里 }, 3000); 对于一个3秒钟的循环,我想让一个计时器在其中计数,它每秒钟更新一次,而不是每3秒钟更新一次,这是可能的吗 我试着把这个循环: var stmints = 0; var stseconds = 0; var stzecsec = 0; function toAutoStop() { alert('Your life goes on'); } var zecsec = 0; var seconds

我用的是这样的代码 setInterval(函数(){ //代码在这里 }, 3000); 对于一个3秒钟的循环,我想让一个计时器在其中计数,它每秒钟更新一次,而不是每3秒钟更新一次,这是可能的吗

我试着把这个循环:

var stmints = 0;
var stseconds = 0;
var stzecsec = 0;


function toAutoStop() {
  alert('Your life goes on');
}


var zecsec = 0;
var seconds = 0;
var mints = 0;

var startchron = 0;

function chronometer() {
  if(startchron == 1) {
    zecsec += 1;       // set tenths of a second


    if(zecsec > 9) {
      zecsec = 0;
      seconds += 1;
    }


    if(seconds > 59) {
      seconds = 0;
      mints += 1;
    }


   document.getElementById('showtm').innerHTML = mints+ ' : '+ seconds+ '<sub>'+ zecsec+             '</sub>';


    if(zecsec == stzecsec && seconds == stseconds && mints == stmints) toAutoStop();
    else setTimeout("chronometer()", 100);
  }
}

function startChr() { startchron = 1; chronometer(); }      // starts the chronometer
function stopChr() { startchron = 0; }                      // stops the chronometer
function resetChr() {
  zecsec = 0;  seconds = 0; mints = 0; startchron = 0;
  document.getElementById('showtm').innerHTML = mints+ ' : '+ seconds+ '<sub>'+ zecsec+     '</sub>';
}


startChr();
var stmints=0;
var stseconds=0;
var-stzecsec=0;
函数自动停止(){
警惕(“你的生活还在继续”);
}
var-zecsec=0;
var秒=0;
var-mints=0;
var startchron=0;
功能天文钟(){
如果(startchron==1){
zecsec+=1;//设置十分之一秒
如果(zecsec>9){
zecsec=0;
秒+=1;
}
如果(秒>59){
秒=0;
薄荷糖+=1;
}
document.getElementById('showtm').innerHTML=mints+':'+seconds+''+zecsec+'';
如果(zecsec==stzecsec&&seconds==stseconds&&mints==stmints)自动停止();
else设置超时(“计时器()”,100);
}
}
函数startChr(){startchron=1;chronometer();}//启动计时器
函数stopChr(){startchron=0;}//停止计时
函数resetChr(){
zecsec=0;秒=0;分钟=0;开始计时=0;
document.getElementById('showtm').innerHTML=mints+':'+seconds+''+zecsec+'';
}
startChr();

您可能希望将周期设为1s,然后:

var UPDATE_PERIOD = 1;
var ACTION_PERIOD = 3 * UPDATE_PERIOD;

var passed = 0;
setInterval(function() {
  passed += UPDATE_PERIOD;

  updateTimer();
  if(passed % ACTION_PERIOD === 0) {
    doStuff();
  }
}, UPDATE_PERIOD * 1000);

function updateTimer() {
  document.getElementById("timer").textContent = "" + passed + "s";
}

function doStuff() {
  // do your stuff here
}
非常简单的例子:

这其实很容易。我使用jquery,但这只是用于选择元素。没有什么真正能控制逻辑

w.clone().appendTo('body')是您希望放置需要调用的函数的位置。。。例如
dowork()

var t=0, w=$('.w'),txt=$('.text');

setInterval(f,1000);
function f(){
    txt.text(t+1); 
    if(t==2) w.clone().appendTo('body');
    t=++t%3;
}

是的,有可能……你试过什么?尝试并发布你的代码我尝试过像这样放置一个普通的秒表:没关系,它太长了,无法作为评论发布代码发布在那里,我发布了代码嘿,我尝试了这个,但我的页面上没有显示任何内容,我尝试了几种不同的方法,但没有任何效果我不知道你的HTML是什么,或者你想要完成的细节。这个想法是向你展示总体战略。您是否清楚此代码的作用?你需要更详细的解释吗?