移动设备上的keyup、keydown和keypress事件存在问题
P粉461599845
P粉461599845 2023-08-22 23:26:57
0
2
598
<p><br /></p> <p>我一直在尝试让它工作,但是我不知道发生了什么,我有以下代码:</p> <pre class="brush:php;toolbar:false;">$('#buscar-producto').on('keydown', function(e){ console.log('hello'); console.log(e.keyCode); });</pre> <p>它在电脑上可以工作,但在手机上不行...</p> <p><strong>编辑:</strong> 我需要在按下键时获取keyCode...</p>
P粉461599845
P粉461599845

全部回复(2)
P粉431220279

你可以尝试event.keyevent.keyCodeevent.which

如果以上都不起作用,你可以尝试event.target.value.splice(-1)

P粉550257856

keydown 应该可以工作,但是你可以使用input事件,这似乎对Android移动设备产生了不良影响...
要获取按下键的代码,可以使用jQuery的标准化Event.which

已测试的Android Chrome:

使用input事件(e.which始终为0,所以在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>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板