responsive
ポップアップの非表示など、Web サイトの特定の要素の動作を変更する関数があります。2 つのケースで呼び出します。
$(document).ready(responsive);
$(window).resize(responsive);
仮想キーボードが実際に画面の高さを変更し、responsive
機能をトリガーしてポップアップを閉じるため、Android chromeで問題が発生します(一部のポップアップにはテキストフィールドがあり、入力できません)。
どうすればこれを防ぐことができますか? Android仮想キーボードは画面の幅ではなく高さのみを変更するという良い点をどこかで読んだので、サイズ変更の前後で幅を比較することをお勧めします。そのため、前後の幅を比較してresize()
幅が異なる場合に実行するこの関数を作成しましたが、期待どおりに機能せず、画面の高さを変更しただけでもコンソール ログに異なるドキュメント幅が表示されます (chrome 開発者ツールを使用) )。
何がうまくいかなかったのかresponsive
、高さの変更時に関数が起動されないようにするにはどうすればよいですか?
function resizeWidth() {
var existingWidth = $(document).width();
$(window).resize(function() {
var newWidth = $(document).width();
if (existingWidth != newWidth) {
$(window).resize(responsive);
console.log(existingWidth);
console.log(newWidth);
};
});
};
$(window).resize(resizeWidth);