ホームページ > ウェブフロントエンド > CSSチュートリアル > Internet Explorer の古いバージョンでは document.body.scrollTop が常にゼロになるのはなぜですか?

Internet Explorer の古いバージョンでは document.body.scrollTop が常にゼロになるのはなぜですか?

Mary-Kate Olsen
リリース: 2024-11-24 21:03:43
オリジナル
418 人が閲覧しました

Why is document.body.scrollTop Always Zero in Older Versions of Internet Explorer?

Internet Explorer でのドキュメントのスクロール動作に一貫性がない

document.body.scrollTop 経由でスクロール位置を動的に表示しようとすると、次のような問題が発生しました。異常です。Internet Explorer では常に 0 を返します。この問題が発生する理由を理解するために、問題を詳しく調べて解決策を提供しましょう。

IE では document.body.scrollTop が常にゼロになるのはなぜですか?

以前のバージョンではInternet Explorer では、ドキュメント レンダリングの非標準的な解釈により、scrollTop プロパティの動作に一貫性がなくなりました。厳密な HTML5 doctype を使用する場合、IE10 以降のバージョンは、この点で他のブラウザと一致するようになりました。

古い IE バージョンの代替ソリューション

古い IE バージョンの場合、スクロール位置を正確に取得するには、別のアプローチが必要です。次のコード スニペットは、フォールバック ソリューションを提供します。

var top = (document.documentElement && document.documentElement.scrollTop) || document.body.scrollTop;
ログイン後にコピー

このコードは、documentElement プロパティが存在するかどうかを確認し、scrollTop 値を返します。そうでない場合は、document.body.scrollTop に戻ります。

このソリューションを採用すると、古いバージョンの Internet Explorer を含むブラウザ間で一貫したスクロール位置を取得できます。

以上がInternet Explorer の古いバージョンでは document.body.scrollTop が常にゼロになるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート