2011-01-27 41 views
1

我有一个容器div里面我想用jquery动态创建其他盒子(div)。每个新盒子应放在其他打开盒子的左侧。除了盒子打开到其他打开盒子的右侧外,一切都可以正常工作。以下是我迄今为止所做的工作:动态打开箱子从右到左的容器

#container{ 

    overflow-y:hidden; 
    white-space:nowrap; 
    border:none; 
    position:relative; 
    z-index:998; 
    overflow:hidden; 
    float:left; 
    display:table-row; 
    vertical-align:bottom; 
} 
.box{ 

    z-index:997; 
    vertical-align:bottom; 
    width: 225px; 
    position:static; 
    border:1px solid #666666; 
    /*next lines are added to force boxes go to bottom when minimized-cross browser solytion*/ 
    display:-moz-inline-stack; 
    display:inline-block; 
    zoom:1; 
    *display:inline; 
} 

有什么建议吗?

回答

3

而是他们追加的(我假设你是)使用prepend在开始添加新的元素..

var newEl = $('<div>',{class:'box', text:'whatever..'}); 
$('#container').prepend(newEl); 

演示在http://www.jsfiddle.net/gaby/acnNe/

+0

谢谢你的答案!我被卡住了试图通过CSS来做到这一点,尽管这很简单... – CrisDeBlonde 2011-01-28 11:31:22

0

你有没有想过浮动权:

#container{ 
float: right 
} 
+0

该做的工作,直到我添加了一个“最小化“选项的框。 然后,如果容器正确地漂浮,最小化的箱子保持在容器顶部。无论如何感谢您的回答! – CrisDeBlonde 2011-01-28 11:34:39

2

它可能最容易使用的.prepend()

$('#container').prepend('<div class=".box">Some content</div>'); 

这将插入新的盒作为容器的第一个孩子 - 在容器中的任何其他箱子之前。

+0

感谢您的答案:)这工作 - 我以为我可以通过CSS来做,甚至没有考虑在我的jQuery代码 – CrisDeBlonde 2011-01-28 11:33:43