teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

lengthプロパティで問題なかったので修正。

2016/02/18 01:20

投稿

yamato_hikawa
yamato_hikawa

スコア2092

answer CHANGED
@@ -5,7 +5,7 @@
5
5
  var setEqualHeight = function(){
6
6
  var $li = $('li');
7
7
 
8
- var numberOfLists = $li.filter(':last-of-type').index() + 1;
8
+ var numberOfLists = $li.length;
9
9
  //console.log('numberOfLists:', numberOfLists);
10
10
 
11
11
  // Get width of parent ul and li

2

追記

2016/02/18 01:20

投稿

yamato_hikawa
yamato_hikawa

スコア2092

answer CHANGED
@@ -73,10 +73,10 @@
73
73
  var $content = $li;
74
74
 
75
75
  for(var i = 0; i < listsInColumn ;i++){
76
- var $target = $content.slice(0, 4), // 1行目から順に抽出
76
+ var $target = $content.slice(0, listsInRow), // 1行目から順に4つずつ抽出
77
77
  maxHeight = maxHeightArray[i];
78
78
 
79
79
  $target.height(maxHeight);
80
- $content = $content.slice(4); // 高さを適用した行を除外して、ループの最初に戻る
80
+ $content = $content.slice(listsInRow); // 高さを適用した行を除外して、ループの最初に戻る
81
81
  }
82
82
  ```

1

追記

2016/02/17 07:27

投稿

yamato_hikawa
yamato_hikawa

スコア2092

answer CHANGED
@@ -65,4 +65,18 @@
65
65
  }
66
66
 
67
67
  setEqualHeight();
68
+ ```
69
+
70
+ 最後の適用をfor文でやるとこんな感じでした。
71
+ ```javascript
72
+ // 上記結果を各行に適用
73
+ var $content = $li;
74
+
75
+ for(var i = 0; i < listsInColumn ;i++){
76
+ var $target = $content.slice(0, 4), // 1行目から順に抽出
77
+ maxHeight = maxHeightArray[i];
78
+
79
+ $target.height(maxHeight);
80
+ $content = $content.slice(4); // 高さを適用した行を除外して、ループの最初に戻る
81
+ }
68
82
  ```