jQueryで、要素の最大値を配列内から取得する

ある要素の中で、高さが1番の要素の、その高さを取得して、要素の高さを同じにしたいってことがありました。

.hogeの中にある、1番高いfuga(つまり、左端)の高さが知りたい、ということです。

以下の記事を参考にして作ってみました。

『jQuery(JavaScript)で指定した要素の子要素数や最大文字数を配列内から取得する』
http://bl6.jp/web/javascript/max-num-text-array/

$(function(){
  var elmCld = $('.hoge').children('fuga');
  var elmCldNum = elmCld.length;
  //fugaの高さを入れる配列をつくる
  var array = [];
  for(var i = 0; i < elmCldNum; i++){
    // i 番目の高さをarrayに格納
    array.push($(elmCld).eq(i).height());
  }
  //1番高さのあるfugaのインデックス
  var anyNum = array.indexOf(Math.max.apply(null,array));
  var maxHeight = $('.hoge fuga').eq(anyNum).height();
  $('.hoge fuga').height(maxHeight);
});

DEMO PAGE

似たようなjQueryプラグインがあったかと思うけど、
短い記述でできたので、それなりに満足。

コメントを残す

あなたのメールアドレスは公開されません。必須項目には印がついています *

CAPTCHA