2012-09-27 102 views
1

我想使用jQuery动态设置包含h3的div的顶部位置。链接是我想要完成的一个图像。使用jQuery动态定位基于其他元素的元素

在该图片中,冠军div(绿色h3s)上的绝对位置是590的硬编码顶部。如果锦标赛尺寸永不改变(8,4,2,1)一些比赛只有两轮(3场比赛),其中的标题显然落在了页面上。

在括号中,我在每个中途点都添加了round-title-before和round-title-after,因此我可以看到/表示在它们之间显示标题。

有没有一种方法可以用.position()或.height()计算.round-title-before和.round-title-after之间的差异,以正确定位#title div,使其始终居中或关闭无论有多少游戏或有多少游戏,都可以集中到中心?第二张照片作为较小比赛的例子。

大型赛事:

Tournament Bracket

========================

小比赛:

Tournament Bracket Smaller

回答

0

在我看来,你应该使用jQueryUI的”将每个托架放入一个容器中,结合其位置功能。容器的高度等于总高度,并且可以使用上述jqueryui位置功能来相对于容器垂直居中(并且我想在x轴的右侧)。

+0

每一轮都包含在div.bracket中。但是每个支架的高度都等于最高的,因为jQuery也在计算位置,使括号在整个锦标赛中均匀排列。 – Kevin

+0

在这种情况下,我想你可能会考虑声明括号的父母,然后计算偏移量,用它来定位。你能偶然发布一个jsfiddle吗? – Eva