获取父菜单的位置和宽度

时间:2014-05-31 12:59:25

标签: javascript jquery css

我想知道如何使用jQuery获取父位置和宽度。 例如

<ul id="menu"><li>Parents</li>
    <ul><li>Child</li></ul>
</ul>

我的jQuery:

if($('#menu > li > ul').children('li').hasClass('current-menu-item')){
//do animate
        left: $(this).parent().siblings().position().left;,
        width: $(this).parent().siblings().width();
    });

如果我在<li>child</li>。如何获得<li>parents</li>的位置和宽度?

2 个答案:

答案 0 :(得分:1)

var parent = $('#menu .current-menu-item').parent().closest('li');
var position = parent.position();
var width = parent.width();

答案 1 :(得分:0)

您的示例HTML与您的Jquery代码不匹配。 ( current-menu-item此类不存在任何元素。)

正如您所提到的那样:您想获得<li>parents</li>

的位置和宽度

因此,您可以使用> combinator仅选择直接孩子。

var select =  $('#menu > li');
var left = parent.position().left;
var top = parent.position().top;
var width = parent.width();

Working Example