Problèmes avec les événements keyup, keydown et keypress sur les appareils mobiles
P粉461599845
P粉461599845 2023-08-22 23:26:57
0
2
575
<p><br /></p> <p>J'ai essayé de le faire fonctionner mais je ne sais pas ce qui se passe, j'ai le code suivant : </p> <pre class="brush:php;toolbar:false;">$('#buscar-producto').on('keydown', function(e){ console.log('bonjour'); console.log(e.keyCode); });</pré> <p>Cela fonctionne sur un ordinateur mais pas sur un téléphone...</p> <p><strong>Edit :</strong> J'ai besoin d'obtenir le code clé lorsque la touche est enfoncée...</p>
P粉461599845
P粉461599845

répondre à tous(2)
P粉431220279

Vous pouvez essayerevent.keyevent.keyCodeevent.which.

Si aucune des solutions ci-dessus ne fonctionne, vous pouvez essayerevent.target.value.splice(-1)

P粉550257856

keydown 应该可以工作,但是你可以使用inputIncident, qui semble avoir des effets néfastes sur les appareils mobiles Android...
Pour obtenir le code d'une touche enfoncée, vous pouvez utiliser la normalisation de jQueryEvent.which

Test Android Chrome :

utilise input事件(e.which始终为0 semble donc être un bug sur les appareils Android)

jQuery(function($) { // DOM准备就绪和$别名已保证

  $('#buscar-producto').on('input', function(e){
    var key = e.which || this.value.substr(-1).charCodeAt(0);
    alert( key )
  });

});
<input type="text" id="buscar-producto" placeholder="搜索...">

<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal