赋予元素与前一个兄弟相同的宽度

时间:2009-11-11 16:14:55

标签: javascript jquery

使用jQuery我想给一个特定元素提供相同的宽度(在这种情况下为min-width)作为之前的元素(兄弟)。在我的情况下,有一个无序列表(UL),我希望给出与之前的div相同的宽度。例如:

<div style="width:300px;"></div>
<ul class="list"><li>item1</li><li>item2</li></ul>
<div style="width:200px;"></div>
<ul class="list"><li>item1</li><li>item2</li></ul>

因此,UL的宽度应取决于之前的兄弟,而不是任何其他元素。

2 个答案:

答案 0 :(得分:4)

确实

$('ul').each(function()
{
    var width = $(this).prev().width();
    $(this).width(width);
});

做到了吗?如果你想通过获取/设置CSS来实现它:

$('ul').each(function()
{
    var width = $(this).prev().css('width');
    $(this).css('width', width);
});

答案 1 :(得分:1)

$('.list').each(function() {
    var width = $(this).prev().width();
    $(this).width(width);
}):