2009-11-02 89 views
2

我想定位一个元素相对于它之前的元素,然后一旦它被初始定位使它的位置独立于它之前的元素。加载页面和定位元素后绝对定位在jQuery中

例如,当您点击侧栏中的“小部件”时,它会折叠,并且其下面的所有“小部件”向上移动。我不希望他们移动。谢谢。

回答

2

你不能用纯CSS做到这一点,但你可以用jQuery做到这一点,就像这样:

var elem = $('something'); 
var pos = elem.position(); 
elem.css({ position: 'absolute', top: pos.top, left: pos.left }); 

直到JavaScript执行,元素不能有position: absolute

+0

这有效,但有没有办法为每个元素做到这一点? – Tim 2009-11-02 01:11:17

+0

是的;你可以把它放在一个循环中。 – SLaks 2009-11-02 01:32:35

+0

感谢您的帮助。 任何想法如何把它放在一个循环?我尝试过使用每个循环,但pos.top和pos.left的值每次都保持不变。 – Tim 2009-11-02 03:29:46