如何检测textarea上箭头键的按键事件?
Posted
技术标签:
【中文标题】如何检测textarea上箭头键的按键事件?【英文标题】:How to detect key down event for arrow key on textarea? 【发布时间】:2013-02-04 05:25:53 【问题描述】:创建以下 html 页面:
<textarea id="code" rows="10"></textarea>
<script>
document.onkeydown = function(event)
alert(event.keyCode);
</script>
在 Mobile Safari 上打开它(在模拟器或带键盘的设备上),点击 textarea 开始编辑。现在按任意箭头键 - 事件不会触发。
如何检测方向键是否按下?
附: Apple Bug 报告系统相关问题:13243285
【问题讨论】:
我无法在 JsFiddle 上重现此内容。 JsFiddle Link 您只能在 Mobile Safari 上复制它。 嘿@Altaveron,有什么消息吗?看起来2年后什么都没有改变?我仍然可以在 ios 9.0.1 上的 Mobile Safari 上重现此问题...到目前为止您找到任何解决方案了吗? 是的,发生了一些变化。现在 iOS 中还有很多问题... 【参考方案1】:苹果官方回答:
感谢您联系 Apple 开发者技术支持 (DTS)。我们的 工程师审查了您的请求并得出结论认为存在 鉴于没有支持的方式来实现所需的功能 目前正在发布系统配置。
【讨论】:
还是没有办法捕捉到这些事件吗?【参考方案2】:$(selector).keydown(function(e)
if (e.keyCode == 37)
alert( "left pressed" );
return false;
);
字符代码:
37 - 左
38 - 向上
39 - 右
40 - 向下
【讨论】:
不要在 Mobile Safari 上工作。这和问题上的一样。以上是关于如何检测textarea上箭头键的按键事件?的主要内容,如果未能解决你的问题,请参考以下文章
在按键事件中使用jQuery在textarea中设置文本[重复]