1

介绍

你好呀,

我有一张<ul>用这样的列表制作的表格。

如您所见,我添加了getMaxLiWidth()以实现所有人的最大<li>宽度。

#| Name|Extra

1| This is a very big name|Extra

我想要的是

#| Name                                      |Extra

1| This is a very big name|Extra

我得到了什么

#                                      | Name                                      |Extra

问题

如何更改我getMaxLiWIdth()的以获得每个“列”的最大宽度?

4

2 回答 2

3

您需要为最宽列中的所有列表项设置 css。首先,您必须确定最宽的列,然后以最大宽度返回它,然后将其用作选择器的一部分。

function getMaxLiWidth() {
    var maxWidth = 0;
    var column = 0;
    $('li').each(function() {
        if (this.offsetWidth > maxWidth) {
            maxWidth = this.offsetWidth;
            column = $(this).index();
            console.log(column);
        }
    });
    return [maxWidth,column];
}

$(function() {

    var arr = getMaxLiWidth();
    $('li:nth-child(' + (arr[1] + 1) + ')').each(function() {
        $(this).css({
            'width': arr[0]
        });
    });
});

这是一个演示:http: //jsfiddle.net/Dcd7R/2/

于 2012-11-30T12:09:49.300 回答
-1

您需要在此处为​​每列设置不同的格式。简单地尝试 CSS

于 2012-11-30T12:06:37.063 回答