2017-03-24 141 views
0
// .items direct child 
var itemsContainer = $('.blog-ticker').children(); 
// each item in .items 
var items = $('.blog-ticker').children().children();   
setInterval(function(){ 
    var i = 0; 
    itemsContainer.css({ 
     'top': -(items[i].clientHeight)+'px' 
    }); 
    if(i <= items.length) { 
     i++; 
    } 
}, 2000); 

停止後的第一輪...混亂設置英寸我該怎麼辦?setInterval停止一次後

回答

2

不,它可能不會在第一輪後停止。

的問題是,你的每個函數運行時間宣佈i0,所以你只需設置第一個項目到相同的位置,它似乎無所事事。

你只需要聲明i之外的功能,它應該很好地工作:

// .items direct child 
var itemsContainer = $('.blog-ticker').children(); 
// each item in .items 
var items = $('.blog-ticker').children().children();   
// counter 
var i = 0; 
setInterval(function(){ 
    itemsContainer.css({ 
     'top': -(items[i].clientHeight)+'px' 
    }); 
    if(i <= items.length) { 
     i++; 
    } 
}, 2000); 
+0

啊。輝煌。有時候你看不出有什麼明顯的哈哈。感謝@Rhumborl – troychroi