jquery - 有没有办法使用元素 innerHTML 作为 keyCode 编号?
问题描述
标题说,我想知道是否可以使用 innerHTML 作为 keyCode 值,例如:
if (event.keyCode == 65) {
thing1();
thing2();
}
有没有办法获取元素的 innerHTML 并使用它而不是“65”?例如,您制作了一个可点击的框来注册您按下的任何键并将其转换为 keyCode 数字以使用而不是“65”?
解决方案
是的,这是可能的。由于您仅使用 jQuery 标记了此问题,因此最好使用该text()
方法而不是html()
or innerHTML
,然后在进行比较之前将其转换为整数。尝试这个:
var keycode = parseInt($('span').text(), 10);
$('#foo').on('keypress', function(e) {
if (e.keyCode === keycode) {
console.log(`You pressed '${String.fromCharCode(keycode)}', keycode: ${e.keyCode}`);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p>
Keycode: <span>97</span>
</p>
<p>
Press 'a' in this field:
<input type="text" id="foo" />
</p>
推荐阅读
- javascript - 递归地用数组中的值填充对象
- dhtmlx-scheduler - DHTMLX 调度程序。我可以从 LightBox Checkbox 获取文本到 EventBox 吗?
- javascript - 为什么默认是:() => [],而不仅仅是 []?
- java - com.google.cloud.storage.StorageException 404 in blob.getContent()
- charts - 如何从chartjs中的所需点制作虚线?
- windows - 有没有办法停止或中断 Windows 关机过程
- extjs - 标签对于 radiogroup 单选按钮来说太大了
- javascript - Spring On Submit Button 文本框值保持不变,但选择标签变空
- c++ - HDF5 链接错误
- c - 通用链表?