これは私が書いたJavaScript(jQuery)のビットです。基本的に「文書とウィンドウの高さの差を計算し、その分だけ要素を小さくする」という仕組みです。 (下記参照)IE7で永続的なサイズ変更イベントを引き起こすjQueryリサイズコード
—これは残念ながら私はまだIE7のサポートが必要で、そのブラウザの動作は一種のものです。具体的には、私の関数を呼び出すは別のサイズ変更イベントを発生させ、フィードバックループの一種を引き起こしているようです。
IE7は明らかにこれが起こる唯一のブラウザであり、私はまだそれがどうして起こるかを理解していません。私はすでに何も外れていないことを確認するために目標の高さを小さくしようとしましたが、結果は同じです。
私のコードをIE7でサイズ変更イベントを発生させない最適な方法は何ですか?
function stretchToBottom($element) {
(window.onresize = function() {
// temporarily reset the element's height so $(document).height() yields the right value
$element.css({maxHeight: ''});
var heightDiff = $(document).height() - $(window).height();
if (heightDiff <= 0) {
return;
}
var initialHeight = $element[0].scrollHeight;
var minHeight = 200;
var targetHeight = initialHeight - heightDiff;
var height = Math.max(targetHeight, minHeight);
$element.css({maxHeight: height + 'px'});
})();
}
これを今日にわたって横断する。もしあなたが行くのが良ければ、あなた自身の答えを受け入れるべきです! – cjl750
@ cjl750あなたは正しいです、リマインダーのおかげで! – vvye