モバイル デバイスでの Web デザインでは、入力ボックスの使用が不可欠な部分であり、タッチ スクリーン携帯電話での入力方法は主にソフト キーボードによって実現されます。ただし、特定のシナリオでは、明らかにソフト キーボードが必要ありません。たとえば、表示機能のみを提供するページや、入力ボックスの内容が事前に入力されている場合は、ソフト キーボードを開く必要はありません。 . キーボードが消えてしまいました。現時点では、携帯電話のキーボードを非表示にする効果を実現するためにいくつかのテクニックを使用する必要があります。jQuery はこの祭りの重要なメンバーです。
1. キーボードを非表示にする従来の方法
キーボードの表示と非表示を制御するには、ブラウザーが提供するいくつかの API を使用できます。一般的なメソッドとしては、blur() や focus() があり、入力ボックスのフォーカスを失ったりフォーカスを取得したりすることができ、それに応じてキーボードの表示と非表示を制御します。
Blur() メソッドを例にとると、入力ボックスがトリガーされたときに、次のコードを実行してキーボードを非表示にすることができます。
$('input, textarea').on('focus', function() { document.activeElement.blur(); });
このようにして、キーボードを実現できます。ただし、この方法は入力ボックスがフォーカスされなくなるだけなので、入力や選択などにこの入力ボックスを使用したい場合は、最初に入力ボックスを再度クリックする必要があります。
2. jQuery メソッド
jQuery は、キーボードの表示と非表示を制御するためのより便利なメソッドをいくつか提供します。最も一般的に使用されるのは、blur()、focus()、trigger() メソッドです。
ブラウザによって提供されるメソッドと同様に、blur() メソッドは現在の入力ボックスのフォーカスを失います。このメソッドはパラメータとしてコールバック関数を受け取ることができ、入力ボックスが実際にフォーカスを失うと、このコールバック関数がトリガーされます。
$('input, textarea').blur(function() { // 这里是回调函数 });
同様に、 focus() メソッドは、現在の入力ボックスにフォーカスを取得できます。
$('input, textarea').focus(function() { // 这里是回调函数 });
jQuery のtrigger() メソッドは、特定のイベントをシミュレートし、この方法でキーボードの表示と非表示を間接的に制御できます。
$('button').click(function() { $('input').trigger('blur'); });
この例では、ボタンをクリックすると、入力ボックスのブラー イベントがトリガーされます。したがって、入力ボックスはフォーカスを失い、キーボードが非表示になります。
3. キーボードを非表示にする方法
最後に、上記の方法を組み合わせて、キーボードを非表示にする機能を実現します。以下は簡単な例です:
// 绑定输入框的获取焦点事件 $('input').focus(function() { // 输入框获取到焦点时,立即执行 blur 事件 $(this).blur(); });
このコードは単純ですが、ソフト キーボードがポップアップするのを防ぎます。入力ボックスがクリックされると、focus イベントがトリガーされ、すぐに入力ボックスのフォーカスが失われるため、キーボードが非表示になります。
4. 概要
ソフト キーボードを非表示にすることは、特定の状況でモバイル デバイスの Web サイトのデザインに非常に必要です。この記事では、jQuery を使用してソフト キーボードの表示と非表示を制御する方法を読者の参考のために紹介します。もちろん、ソフトキーボードを非表示にする効果を達成できる他の方法もありますので、読者は実際の状況に基づいて自分に合った方法を選択してこの目的を達成できます。
以上がjqueryモバイルキーボードを非表示にするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。