以前はこの問題が発生したことはありませんでしたが、解決策が見つからないようです。皆さんが私を助けてくれることを願っています.
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();
});
基本的に、この関数が行うことは、最も高い div をチェックし、選択されたすべての div の高さをこの高さに設定することです。これはうまくいきます。しかし、レスポンシブ デザインなので、ユーザーがブラウザのサイズを変更すると、コンテンツが小さくなり、div が高くなります。そこで、サイズ変更イベントを追加しました。イベントは発生していますが、高さは変わりません。サイズ変更で高さが変わらない理由はありますか?
何が起こるかを示すクイックjsFiddle:http://jsfiddle.net/3mVkn/
修理
うーん、これはただのばかだった。height() を設定していたので、すでに修正されていたので、高さをリセットするだけでうまくいきました。
更新されたコード:
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();
});