ホームページ >ウェブフロントエンド >H5 チュートリアル >H5モバイルページで入力クリック後にキーボードを繰り返しポップアップさせる実装方法

H5モバイルページで入力クリック後にキーボードを繰り返しポップアップさせる実装方法

小云云
小云云オリジナル
2018-02-02 13:48:582865ブラウズ

この記事では、主に 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 コード:

rrreee

js コード: rrreee 関連する推奨事項:


非表示の実装の分析Android メソッドでソフト キーボードが表示され、キーボードが自動的にポップアップ表示されない🎜🎜🎜🎜🎜

以上がH5モバイルページで入力クリック後にキーボードを繰り返しポップアップさせる実装方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。