IPad Safariブラウザーで、フォーカスをテキストボックスからドロップダウンに変更しても、キーボードは残ります...ユーザーがテキストボックスからぼかしたときにキーボードを非表示にできる方法はありますか(Javascriptを使用)。
間接的に言えば、同等のものを探しています(ただし、モバイルSafariで)
[tempTextField resignFirstResponder];
http://uihacker.blogspot.com/2011/10/javascript-hide-ios-soft-keyboard.html でこの解決策を見つけました。基本的に、これを行うだけです(それは私のために働いた):
var hideKeyboard = function() {
document.activeElement.blur();
$("input").blur();
};
IOS 5.0.1を搭載したiPadで、サイトに正常にログインした後、キーボードを非表示にしませんでした。 javascriptコマンドを実行するだけで解決しました
document.activeElement.blur();
ログインに成功すると、キーボードは正しく非表示になります:-)
私はこれが少し古い質問であることを知っていますが、これに対する答えを今日発見しました、そして答えは恥ずかしいほど簡単です...
キーボードが表示されないようにするには:
<input type="text" name="someInput" />
jQuery UIのdatepickerを使用するようなことをしたい場合に...
を追加 読み取り専用 次のような属性:
<input type="text" name="someInput" readonly="readonly" />
JSがオフになっている人に注意を払おうとする場合は、常に属性をオフにしてコードに追加できます。
$('[name=someInput]').attr('readonly','readonly');
お役に立てれば。
概念を示すjsFiddleを次に示します。 http://jsfiddle.net/3QLBz/5/
$("#txt").on("focus", function(){
$(this).blur();
});
iPadのjquery UI datepickerで動作します
本来、入力がフォーカスを失うとiPad、iPhoneキーボードが消えます。
私はモバイル/タブレットデバイスで考え出した
Safariは、cursor:pointer
プロパティを持つ要素のクリックイベントのみを処理します。
私はついにモバイル/タブレットデバイスのbodyタグにcursor:pointer
を追加しました。これは魅力のように機能します。
少しのサンプル
body {
@media screen and (max-width: 1024px) { // IPad breakpoint
cursor: pointer; // Fix iPhone/iPad click issue
}
}
}
別のテキストフィールドで.focus()を呼び出すと、キーボードが消えます。私はSencha touchフレームワークを使用していますが、参照しているテキストフィールドはExt.Textオブジェクトです。
私はこれが直感に反することを知っていますが、私にとってはうまくいくようです
JQueryなしのバージョン:
function hideKeyboard () {
document.activeElement.blur();
Array.prototype.forEach.call(document.querySelectorAll('input, textarea'), function(it) {
it.blur();
});
}