【JS】deliver parameter in setInterval and setTimeout fun

function scroll(img_list, img_num) {
    var content = $(img_list);
    var w = content.find('li').outerWidth(true);
    content.animate({"margin-left": parseInt(-w*this_index)});
        this_index++;
        if(this_index >= img_num)
            this_index = 0;
    console.log(w);
}
setInterval(function() {<br>     scroll(".imgarea", 3);<br>  }, 2000);

  this is wrong 

setInterval(scroll(".imgarea", 3), 2000);  //wrong

     you can change to this ,using anonymous function 

setInterval(function() {  //right
  scroll(".imgarea", 3);

}, 2000);  

 it confused me for a longtime ,i always think my function made same mistake ,but after lot of tests and debug , i found there was something wrong with setInterval function .Remember this !

———— From Laker's blog 

Coding and changing~

Fighting and insisting~

posted @   youngLaker  阅读(279)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示