if(window.innerWidth) {
return window.innerWidth;
}
return $(window).width();
私は上記のコードを使用して、Webページの利用可能な幅を探しています。それはほとんどの時間に働きます。しかし、一部のモバイルブラウザ(モバイルChromeなど)では、デスクトップのウェブサイトでは0が返されます。わからない、何が問題になりましたか?window.innerwidthの予期しない動作
のMozilla/5.0(Linuxでは、アンドロイド5.1.1; SM-J500Mビルド/ LMY48B)のAppleWebKit/537.36(ヤモリ様KHTML)クローム/ 56.0.2924.87モバイルサファリ/ 537.36
これには以下のいずれかそれが失敗したユーザエージェント。主にアンドロイドブラウザのモバイルクロムで発生します。
このコードはいつ実行されますか?ページ幅を取得しようとしたときにページが完全に読み込まれていますか? – Pytth
タブレットやモバイルデバイスが「方向変更のアニメーション」を再生しているときにこの現象が見られました。ドキュメント上でonresizeイベントを待ち受けていて、ポートレートからランドスケープへのトランジションが発生すると、トランジションアニメーションが再生されている間にビューポートサイズを読み取ると結果が0になることがあります。私はこれがブラウザ内での最適化のレンダリングの結果であると想像することができます。 – jduncanator