2016-01-18 46 views
1

我使用簡單的餅圖,然後使用PHP foreach循環爲每個Feed帖添加一個.pin。我想對它們進行定位,使每一個看起來比前一個低30px。這是我目前的嘗試:如何使用jQuery以不同的類標識符定位每個元素?

$(document).ready(function() { 
     for (x = 0; x < i; x++) { 
      var position = 0; 
      $('.pin').eq(x).css('top', position + 'px'); 
      position = position + 30; 
     }; 
    }); 

這是行不通的,他們都只是在頁面的頂部出現在彼此的頂部。

任何幫助將是偉大的,在此先感謝!

+2

您是否定義了我? – Oisin

+3

您每次迭代都將「位置」設置爲0。將'var position = 0;'移到循環之上。 –

回答

1

該循環的每次迭代的位置是相同的,你的分配順序是錯誤的方式,最後i無處可尋。

我想你可能正在尋找這個。考慮到i是有效的。

 var position = 30 * x; 
     $('.pin').eq(x).css('top', position + 'px'); 
0

所有迭代的位置值爲零。在循環開始之前移動該行

0

廢除ifor。由於您使用的是jQuery,請利用.each

var position = 0; 
$(".pin").each(function() { 
    $(this).css('top', position + 'px'); 
    position += 30; 
}); 
相關問題