現在、ウェブサイトで次のコードを使用して、div にオーバーフローの原因となるコンテンツがあるかどうかを検出し、他の要素にクラスを追加します。
// Resize ContainerHeader if a billboard ad is shown
var element = document.querySelector('#banner-top');
if( element.offsetHeight < element.scrollHeight || element.offsetWidth < element.scrollWidth) {
// your element have overflow
$('#banner-top').addClass('billboard');
$('#a_ContainerHeader').addClass('billboard');
$('.menu-header-container').attr('data-offset-top','430');
//alert("YES overflow");
}
else{
//your element don't have overflow
//alert("NO overflow");
}
半分の時間は問題なく動作しますが、ランダムには動作しないようです。その後、ページを更新すると、再び機能します。とてもうるさい。
場合によっては true を返さない理由を知っている人はいますか? コンソールに JavaScript エラーはありません。
このコードは、 http://www.onedirection.netで実際に使用されています。
乾杯、
クリス。