2012-09-21 16 views
0

Image, what i want to achieve 圖片,我想要實現的。動態div一個接一個定位並低於

用戶可以創建包含內容和項目的卡片。用戶還可以評論物品和卡片本身。那麼我需要的是顯示評論如圖片。 連線我用plumb.js製作。 DIV的我可以放置到正確的使用jQuery

$('#c' + comment.id).position({ my: "left top", at: "right top", of: $('#'+comment.parent), collision: "none" });

在數據庫中保存我的評論父元素ID。例如:「卡片項目1」ID是i95(i =項目,95是從db自動增加)。

問題:

  • 我不能確定CSS位置 「上的第2項的用戶評論」。
  • 如果對於一個項目是兩個或更多的評論,那麼我怎麼可以評論後發表評論? jQuery的position()屬性碰撞沒有幫助。 (評論在彼此的頂部)。 (這是最大的問題)
  • 如果評論被評論,那麼我需要在右側發表評論。

我從服務器女巫得到的卡和評論是三個JS對象。 (一個是卡片,一個項目和評論)。首先我畫卡片,然後是項目,然後是評論。在評論對象中,我有卡ID,父母ID。在評論對象的評論不是以任何順序。

一個想法是使列表白色排列評論順序。我知道按照什麼順序列出卡片中的物品。那麼我可以遍歷評論對象,並檢測有多少評論是針對當前銀行卡,然後一看,

  1. 卡評論
  2. 卡評論評論
  3. 項目NO1評論
  4. 項目NO1評論評論
  5. item no2 comments ,,,,等等

然後將項目添加到DOM,計算每個評論的高度,然後計算所有的位置..

但也許有更好的方式來實現這一目標? 我不在乎IE瀏覽器:)

服務器端node.js的是,

+1

是否有任何理由說明爲什麼你不能把所有的註釋包裝到一個容器中,從數據庫中順序地吐出它們並獲得這種效果,或'B)'使用無序列表。就兒童評論而言,你應該在DB中建立一種關係,以瞭解是否有兒童評論。當你吐出來,並且如果你選擇使用'B)'的方法,你可以簡單地向LI元素添加一個新的無序列表,並使用CSS來告訴它在哪裏定位。你的方法看起來相當複雜並且對抗穀物。 2CP。 – Ohgodwhy

回答

0

答案就在這裏。 http://jsfiddle.net/63es7/我無法在jsfiddle上添加jsplumb連接。我在div上添加了碰撞檢測。不是一個很好的解決方案,但我正在努力:)