javascript - 将四种功能整合为单一功能

标签 javascript jquery html

我在一个页面中有四个计数器,我为每个函数调用了单独的函数。我需要将所有函数集成到单个函数中。

var tt1 = setInterval(function() {
  startTimee()
}, 50);
var counter1 = 1;

function startTimee() {
  if (counter1 == 10) {
    clearInterval(tt1);
  } else {
    counter1++;
  }
  document.getElementById('counter1').innerHTML = counter1;

}
var tt = setInterval(function() {
  startTime()
}, 5);
var counter = 1;

function startTime() {
  if (counter == 600) {
    clearInterval(tt);
  } else {
    counter++;
  }
  document.getElementById('counter2').innerHTML = counter;
}
var tt2 = setInterval(function() {
  startTime2()
}, 50);
var counter2 = 1;

function startTime2() {
  if (counter2 == 30) {
    clearInterval(tt2);
  } else {
    counter2++;
  }
  document.getElementById('count3').innerHTML = counter2;
}
var tt3 = setInterval(function() {
  startTime3()
}, 50);
var counter3 = 1;

function startTime3() {
  if (counter3 == 6) {
    clearInterval(tt3);
  } else {
    counter3++;
  }
  document.getElementById('counter4').innerHTML = counter3;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="counter1">10</div>
<div id="counter2">600</div>
<div id="counter3">30</div>
<div id="counter4">6</div>

最佳答案

你可以这样做:

var time = 1, interval = setInterval(tick, 50);

function tick()
{
  if (time <= 10)
    document.getElementById('counter1').innerHTML = time;

  if (time <= 600)
    document.getElementById('counter2').innerHTML = time;

  if (time <= 30)
    document.getElementById('counter3').innerHTML = time;

  if (time <= 6)
    document.getElementById('counter4').innerHTML = time;     

  if (++time > 600) 
    clearInterval(interval); 
}
<p id="counter1"></p>
<p id="counter2"></p>
<p id="counter3"></p>
<p id="counter4"></p>

这远不是最优化的代码,但它只是一个示例,供您了解主要原理。

关于javascript - 将四种功能整合为单一功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38137154/

相关文章:

html - 位置 : fixed Background DIV with images makes scrolling slow: How to make conditional CSS rules for browser-compatibility?

javascript - 无法更改按键上的 CSS 属性值

javascript - 我无法在 html 中打印 js 变量

javascript - Gravity Forms 未在 https 下加载,未定义 jQuery

javascript - : Fullpage. js 和 ScrollMagic 库冲突问题

javascript - 使用 .json() 时 ReadStream 被锁定

javascript - 通过选择处理程序将链接添加到 Google Chart

javascript - Jquery .find 不查找父元素

javascript - 在包含输入类的 Javascript 表格中添加一行

javascript - 使用物理引擎在框架中移动相机