如何正确实现带循环和onclick函数的setInterval?

时间:2015-06-07 14:31:54

标签: javascript

我学习Javascript,只是想了解如何在不同情况下使用setInterval。 现在我有问题的情况,请有人解释我的错误在哪里,以及如何正确地做到这一点。

问题情况:

我想通过点击从计数器和控制台获取新坐标记录它。 例如,我点击一个按钮,控制台告诉我: 0 2000毫秒后1 2000毫秒后2 2000毫秒后3 等等

例如我们有一个用坐标做某事的函数,只需控制台记录它就足够了:

var showUs = function(coordinate){

console.log(coordinate)
}

另一个函数是增加它的计数器:

var increase = function(){

    for(var i = 0; i < 50; i+=1){
       showUs(i);
     }
  }

,最后一个是应该显示间隔坐标的函数:

somebuttom.onclick = function(){

   setInterval(function(){ increase() }, 2000);
}

1 个答案:

答案 0 :(得分:0)

刚刚注意到您的更新。如果你想这样做,那就试试这个:

DEMO

var somebutton = document.getElementById('somebutton');

var showUs = function(coordinate){

console.log(coordinate)
}

var increase = function(){
    var i = 0;
    var si = setInterval(function(){
        if(i < 50){
             showUs(i);
             i++;
        }else{
             clearInterval(si);   
        }
    }, 2000);
}

somebutton.onclick = function(){
  increase();
}