2

私が行った場合

var theHeight;
element.css('min-height', h);
theHeight = element.outerHeight();

Chrome では、古い外側の高さを取得します。

私がしなければなりません

var theHeight;
element.css('min-height', h);
setTimeout(function() {
  theHeight = element.outerHeight();
}, 1);

代わりに (または、もちろん、同様の効果を生み出すものは何でも) outerHeight、「正しい」高さを報告するようにします (これは、変更後に確認できる永続的な実際の高さであると予想されますmin-height)。

残念ながら、setTimeout私にとっては選択肢ではありません。代わりに何を使用できますか? すべての主要なブラウザー (現在のバージョン) で動作するはずです。

4

1 に答える 1

0

setTimeout は最適なオプションではありません。

あなたがしたいことは、DOM がロードされた後にいくつかの JavaScript を適用することです (CSS は document.ready の前に適用されます)。

JQueryで簡単にできます。

$(document).ready(function(){
  modifySomeDomElement();
});

ドキュメントはこちら

これが役に立てば幸いです。

リス

于 2016-03-24T09:04:41.253 に答える