14

Androidのソフトキーボードで入力フィールドをオーバーラップさせるための解決策を探すのに少し疲れています。私の問題はこれと非常に似ています。ソフトキーボードがEditTextフィールドとオーバーラップしていますが、この場合はネイティブアプリケーションではなくHTML5で発生します。

より正確には、入力フィールドがキーボードで完全に覆われると、ページ全体がスクロールされ、このフィールドが表示されるようになります。これで問題ありません。しかし、この入力が表示領域の端にある場合(キーボードが表示された後)、ソフトキーボードがそれと重なり、ページがまったくスクロールしません。最初の記号を入力した直後にページがスクロールされます。

私の顧客はこの動作が気に入らない...GalaxyTab 10 "-Android 4.0.3、LenovoTablet-Android3.1で確実に発生します。

box-sizing:border-box;、、、、などを使用して入力の高さを設定しようとしましたが-webkit-appearance: textfield;、何も機能しませんでした。-webkit-user-select: text;-webkit-writing-mode: horizontal-tb;-webkit-rtl-ordering: logical;

何か考えはありますか?私はCSSソリューションを好みます。この場合、JavaScriptページのスクロールは私にとって答えではありません(顧客の要件)。

おそらく、Android Webブラウザーのバグであり、回避策がないか、入力の親のスタイルの一部が原因で特定の問題が発生している可能性があります(すでにすべてのposition: absoluteプロパティを削除しようとしました)。

すべての提案を歓迎します。

4

2 に答える 2

0

この android の厄介な (そして現在は ios7 でも) を解決する最も簡単な方法は、入力の focus および blur イベントを使用することです。フッター タグを使用していない場合は、フッター要素のクラスに置き換えてください。

jQuery の場合:

$("input").focus(function(){
    $('footer').hide();
});

$("input").blur(function(){
    $('footer').show();
});
于 2013-10-09T12:18:40.700 に答える