Equal height elements using jquery this works well for dashboard structures.
A Pen by Alan Parsons on CodePen.
Equal height elements using jquery this works well for dashboard structures.
A Pen by Alan Parsons on CodePen.
jQuery.fn.equalHeights = function(){ | |
var $this = $(this), | |
currentTallest = 0, | |
equalAtt = $this.attr('data-equal'), | |
equalArr = equalAtt.split('|'), | |
l = equalArr.length; | |
for ( var u = 0; u < l; u++ ) { | |
var $el = $(equalArr[u]); | |
$el.height('auto'); | |
if (parseInt($el.css('height')) > currentTallest) currentTallest = parseInt($el.css('height')); | |
} | |
for ( var i = 0; i < l; i++ ) { | |
var $el = $(equalArr[i]); | |
$el.css('height', currentTallest + 'px'); | |
if($el.attr('data-equal-split')) { | |
equalArr = $el.attr('data-equal-split').split('|'); | |
var newHeight = currentTallest/equalArr.length; | |
for ( var k = 0; k < equalArr.length; k++ ) { | |
var $el = $(equalArr[k]); | |
$el.css('height', newHeight + 'px'); | |
} | |
} | |
} | |
} | |
$('[data-equal]').each(function(){ $(this).equalHeights(); }); |