ホームページ >ウェブフロントエンド >H5 チュートリアル >H5モバイルページで入力クリック後にキーボードを繰り返しポップアップさせる実装方法
この記事では、主に H5 モバイル ページにキャンバス スライド コードを追加する方法を説明します。Android スマートフォンで入力をクリックすると、モバイル ページでキーボード アニメーションが繰り返しポップアップ表示されます。アニメーション、createjs.Touch.enable(stage)、true、false)が追加されますが、このステートメントを追加すると、ページへの入力やクリックなどのクリック可能なイベントが無効になるため、タッチイベントが使用されます。次のような関連関数を実装します:
$('#button').on('touchstart', function() { window.location.href = 'xx.html' })
タッチ イベントはフォーカスの取得を制御します。 input
キーボードをポップアップさせます: input
键盘弹出:
$('#input').on('touchstart', function() { $(this).focus() })
然而苹果手机键盘关闭后input
焦点自动失去,再次点击键盘弹出无异常,安卓手机键盘关闭input
还是获取焦点状态,故键盘无法重复弹出。本想在关闭键盘的事件上加个失去焦点的行为,但查过资料无法找到这个事件,所以另辟奇径,找到了另一种办法:每次点击input
都会删除原来的input
并且生成新的input
放在这里,这样新的input
又可以获取焦点并弹出键盘了,实现代码如下:
html
代码:
<button id="btn"></button> <p class="box"> <input type="text" maxlength="4" id="hengpi"/> </p>
js
$('#btn').on('touchstart', function() { var value = $('input').val() $('input').remove() $('.box').html('<input type="text"/>') if(value!=''){ $('input').val(value) } $('input').focus() })ただし、Apple 携帯電話のキーボードを閉じると、
input
フォーカスは自動的に失われ、キーボードを再度クリックすると例外なくポップアップしますが、Android 携帯電話のキーボードは input
を閉じてもフォーカスを取得するため、キーボードは繰り返しポップアップすることができません。当初はキーボードを閉じるイベントにフォーカスを失う動作を追加したかったのですが、情報を確認してもこのイベントが見つからなかったので、別の方法を見つけました。inputをクリックするたびに削除されます
元の input
が生成され、新しい input
がここに配置されるため、新しい input
がフォーカスを取得して、キーボードの実装コードは次のとおりです: html
コード:
js
コード: rrreee 関連する推奨事項:
以上がH5モバイルページで入力クリック後にキーボードを繰り返しポップアップさせる実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。