Zdarzenie zmiany rozmiaru należy dodać do tego kodu, ponieważ wysokość zawartości w większości przypadków zależy od rozdzielczości i powoduje niepożądane problemy z projektowaniem, takie jak przepełniony tekst.
Oto bardziej kompletna wersja kodu, który obsługuje zmiany rozmiaru oraz
jQuery(function() {
equalMaxWidth = 500; /* Customize viewport width - for resolutions below this number, the height equalizing will not work */
boxes = jQuery('.well');
boxes.removeAttr('style');
if(jQuery(window).width() > equalMaxWidth){
equalBoxHeights(boxes);
};
window.onresize = function() {
boxes.removeAttr('style');
console.log(jQuery(window).width());
if(jQuery(window).width() > equalMaxWidth){
equalBoxHeights(boxes);
};
};
});
function equalBoxHeights(boxes) {
maxHeight = Math.max.apply(
Math, boxes.map(function() {
return jQuery(this).height();
}).get());
boxes.height(maxHeight);
}
Sprawdź demo na jsFiddle http://jsfiddle.net/o4w7tjtz/
Wskazówka: spróbuj rozmiaru 3rd ramę pionową (zauważony równych wysokościach wokół 500pw szerokość?)
To jest fajne. Nie ma sposobu, aby to zrobić z css? – DaveR
@DaveR Krótka odpowiedź: nie. Długa odpowiedź: możesz użyć stałej wysokości lub, jeśli znasz liczbę pól w dziale, użyj wysokości procentowej (100/N), ale to nie to samo. Weź pod uwagę, że bootstrap używa jQuery sam;) –
@DaveR Istnieje inna opcja, ale działa tylko wtedy, gdy chcesz, aby wiele elementów div wyglądało jak wiersz tabeli: http://jsfiddle.net/DVnZ6/2/ –