2010-02-02 51 views
0

我想寫一些JavaScript,它將通過設置z-index來堆疊對象。在javascript中堆疊行爲的邏輯

測試用例: http://christophermeyers.name/stacker/

我砍死一起,但我想,以推斷出行爲的東西多一點邏輯。即:

給定x個元素,當元素C移動到頂部時,該元素上的所有元素都必須向下移動1,而該元素下的所有元素都應保持原位。

+0

看起來你的例子已經符合你的要求。你能用紅色,綠色,藍色的盒子舉個例子,這樣我們就可以重現問題並告訴我們你想要什麼樣的行爲? – 2010-02-02 16:43:38

+0

如果你點擊綠色,然後紅色,然後再次紅色,你會看到綠色下降到藍色。這種行爲是不正確的。 此外,該示例是針對這種特定情況(元素數量等)的硬編碼。我希望弄清楚處理任何元素的邏輯。 – 2010-02-02 21:45:58

回答

0

當你正在做這樣的事情時,「鏈表」會產生一個良好的數據結構。通過一系列簡單的節點跟蹤可堆疊元素的順序。

// ListNode 
{ 
    value: {} 
    next: {<ListNode>} 
} 

..並更新序列作爲新節點添加或選擇。

我已經發佈列表的工作示例被用於深度以下網址分類:

http://aethermedia.net/sandbox/depth-sorting.html

對不起,我沒有時間拉起一個更合適的教程=/