我正在尝试使用javascript来为嵌套在div中的三个UL设置一个等于其高度的负顶部位置。我已经有了它的工作,有点(感谢来自这里的帮助!)但是不是计算每个嵌套UL的高度并相应地计算顶部位置,而是为每个UL分配负顶部位置-367px:
<script type="text/javascript">
$(document).ready(function() {
//Get height of footer popup
var pHeight = $('footer ul li > ul').outerHeight();
//Calculate new top position based on footer popup height
var nHeight = pHeight + "px";
$('footer ul li > ul').css({
//Change top position to equal height of footer popup
'top' : "-" + nHeight
});
});
</script>
我使用.height
,.outerheight
甚至.getheight
尝试了这一点,有人在Jquery文档中提到了.height
。我也试过使用每个声明,虽然它似乎没有用;我可能写错了。
另外(如果可能的话),我希望消极的位置考虑使用css :after
伪造的属性生成的内容的高度,尽管我总是可以手动将其添加到计算如果javascript无法访问它。
编辑:添加了测试页链接。这是我试图用JS定位的底部div(和嵌套的UL);每个盒子上的“尾巴”应该排在他们父母div之上大约1.2em处。
答案 0 :(得分:1)
我认为你要找的是each()jquery函数(参见http://api.jquery.com/each/)。当你的选择者'footer ul li> ul'返回多个元素,它只计算第一个匹配元素的高度。