0

私はウェブサイトのモバイル版に取り組んでおり、テキスト入力とテキストエリアを含む、画面の幅と高さの 100% のサイズの jQuery UI ダイアログがあります。ユーザーが入力を押すと、それが選択され、電話はキーボードを表示するためにダイアログを押し上げます。問題は、ユーザーが入力を押す (選択を解除する) と、電話のキーボードが消え、ダイアログがまだ「押し上げられた」ままになることです。そのため、キーボードを下にスライドさせた後、ダイアログを垂直方向に再センタリングする必要があります。

入力が選択解除されたときに実行されるイベント ハンドラーを入力に追加できますが、ダイアログを垂直方向に再配置する方法がわかりません。

これどうやってするの?

4

1 に答える 1

0

ここで解決策を見つけたので、質問する前にさらに検索を行う必要がありました: https://stackoverflow.com/a/3060895/1101095

同じ問題を抱えている人に役立つ場合に備えて、ここに質問を残します。.blur()ハンドラー内の上記のソリューションのコードは次のとおりです。

$("input, textarea").blur(function() {
    $(".ui-dialog-content").dialog("option", "position", "center"); // resize the (technically all) dialog
});

これで問題は解決しました。

于 2013-09-13T21:35:25.830 に答える