我有一個圖像數組,其中有多個圖像。不是固定的,可以是一個或兩個或8時,我有定影圖像的編號,然後我使用的代碼是這樣的需要關於構建邏輯,向對象添加屬性的幫助
var details = {
image1: {
position: 0,
title: $slideDiv.children().eq(0).attr("alt")
},
image2: {
position: -400,
title: $slideDiv.children().eq(1).attr("alt")
},
image3: {
position: -800,
title: $slideDiv.children().eq(2).attr("alt")
},
image4: {
position: -1200,
title: $slideDiv.children().eq(3).attr("alt")
},
image5: {
position: -1600,
title: $slideDiv.children().eq(4).attr("alt")
}
}; //end of var details
但現在我有在陣列的圖像。我希望細節對象添加的圖像等於數組中的圖像數量。我想是這樣的
var details = {};
var position = 0;
images.each(function(index){
details.("image" + index) : {
position: position,
title: $slideDiv.children().eq(index).attr("alt")
}
position += -400;
}) ; //end of .each()
,我想提出的,如果我有圖像陣列中的兩個圖像的就應該成爲這樣的事情
var details = {
image1: {
position: 0,
title: $slideDiv.children().eq(1).attr("alt")
},
image2: {
position: -400,
title: $slideDiv.children().eq(2).attr("alt")
}
}
的邏輯,但是這是行不通的。當然我的語法錯了
details.("image" + index) : {..}
我該怎麼做?
感謝
爲什麼不只是讓一個數組,而不是命名屬性的對象? – 2012-04-04 05:21:59
我正在建設圖片庫。當圖像的數量是固定的,然後邏輯與對象。所以現在我只是想把事情變成動態的而不是靜態的。所以我使用相同的邏輯,但現在所有的變量都相對於陣列中的圖像數量進行設置 – Basit 2012-04-04 05:28:17
爲了清晰起見,您可能需要切換到數組。通常,只有在您無法預先預測名稱的情況下,纔會執行'obj [name]'語法。這裏的名稱遵循這樣的規則模式,它們實際上並沒有告訴你任何有關特定元素的信息,並且使得單個元素的存儲和檢索變得複雜。 – 2012-04-04 05:40:01