jQuery或Javascript将所有按钮设置为最宽按钮的宽度

时间:2012-11-07 17:18:29

标签: javascript jquery html css

我的客户希望我写一小段代码,jQuery首选,将所有链接设置为最宽链接的相同宽度。这是HTML:

<div>
<h1>HEADER</h1>
<p style="text-align: right;" class="floatRight"><a href="#" class="small-button eLength"><span>BUTTON 1</span></a></p>
<p style="text-align: right;" class="floatRight"><a href="#" class="small-button eLength"><span>BUTTON 2</span></a></p>
<p style="text-align: right;" class="floatRight"><a href="#" class="small-button eLength"><span>BUTTON LONGEST</span></a></p>
</div>

CSS将所有三个按钮设置为最小宽度180px。我正在寻找所有这些都取决于课程: eLength

2 个答案:

答案 0 :(得分:9)

你可以得到这样的最大宽度:

var widest = Math.max.apply(Math, $('.eLength').map(function() { 
    return $(this).width(); 
}));

并将其包装在条子插件中:

$.fn.widest = function() {
    return this.length ? this.width(Math.max.apply(Math, this.map(function() { 
        return $(this).width();
    }))) : this;
};

$('.eLength').widest();

答案 1 :(得分:1)

使用John Resig的Fast JavaScript Max/Min

Array.max = function(array) {
    return Math.max.apply(Math, array);
};

var widths = new Array();
$('.eLength').each(function(index) {
    widths.push($(this).width());
});

alert("Max Width: " + Array.max(widths));