Tôi chưa bao giờ gặp vấn đề này trước đây nhưng tôi dường như không thể tìm ra giải pháp, vì vậy tôi hy vọng các bạn có thể giúp tôi.Chiều cao jQuery() không thay đổi kích thước
jQuery
function setTheHeight() {
if($('#main.level1 .block.attention .block-content').length) {
//Get value of highest element
var maxHeight = Math.max.apply(Math, $('#main.level1 .block.attention .block-content').map (
function() {
return $(this).height();
}
));
console.log(maxHeight);
$('#main.level1 .block.attention .block-content').height(maxHeight);
}
}
setTheHeight();
$(window).resize(function() {
setTheHeight();
});
Về cơ bản những gì chức năng này thực hiện là kiểm tra các div cao nhất và thiết lập chiều cao của tất cả các nhân div chọn với chiều cao này. Điều này hoạt động tốt. NHƯNG nó là một thiết kế đáp ứng vì vậy khi người dùng thay đổi kích thước của trình duyệt của mình nội dung được nhỏ hơn và div cao hơn. Vì vậy, tôi đã thêm một sự kiện thay đổi kích thước. Sự kiện này đang bị sa thải nhưng nó không thay đổi chiều cao. Bất kỳ ý tưởng là lý do tại sao thay đổi kích thước không thay đổi chiều cao?
nhanh jsFiddle để hiển thị những gì sẽ xảy ra: http://jsfiddle.net/3mVkn/
FIX
Hmm đây chỉ là đồng bằng ngu ngốc. Bởi vì tôi đã thiết lập chiều cao() nó đã được cố định nên tất cả những gì tôi phải làm là chỉ cần thiết lập lại chiều cao và nó hoạt động.
đang Cập nhật:
function setTheHeight() {
if($('#main.level1 .block.attention .block-content').length) {
//Reset height
$('#main.level1 .block.attention .block-content').height('auto');
//Get value of highest element
var maxHeight = Math.max.apply(Math, $('#main.level1 .block.attention .block-content').map (
function() {
return $(this).height();
}
));
console.log(maxHeight);
$('#main.level1 .block.attention .block-content').height(maxHeight);
}
}
setTheHeight();
$(window).resize(function() {
setTheHeight();
});
Xin chào Dennis, cảm ơn bạn đã trả lời. Thật không may điều này dường như không sửa chữa probleem: ( – Sjors
Có, bạn đã đúng. Vui lòng kiểm tra chỉnh sửa, tôi đã cung cấp giải pháp chính xác ngay bây giờ. –