首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用键盘代码触发键盘按键

如何使用键盘代码触发键盘按键
EN

Stack Overflow用户
提问于 2017-05-22 17:35:10
回答 1查看 239关注 0票数 0

我有一个场景,我必须准备一个JS方法,其中应该触发Tab键。即,当功能被执行时,Tab按钮点击应该触发。优选地,使用密钥代码。

EN

回答 1

Stack Overflow用户

发布于 2017-05-22 18:42:25

您可以调度键盘事件,但结果可能不是那么压倒性的。

如下所示,您可以使用适当的属性来分派事件,但在某些浏览器中,这些值是空的,浏览器实际上会忽略它。您可以用tab键定位到该按钮,然后按"Enter“键单击它。它会调度一个选项卡,但是焦点不会移动,关联的事件也不会报告构造函数中设置的值。

在输入中键入会显示您应该得到的结果类型。在很多浏览器中尝试一下。

代码语言:javascript
运行
复制
function showEventProperties(evt) {
  document.getElementById('details').innerHTML = ['type','key','code','keyIdentifier','charCode','which','keyCode'].map(function(key) {
    return key + ': ' + evt[key]; 
  }).join('<br>');
}

function sendTab(node) {
  var evt = new KeyboardEvent('keypress', {
    'view': window,
    'bubbles': true,
    'key': 'Tab',
    'charCode': 9,
    'keyCode': 9,
    'which': 9
  });
  node.dispatchEvent(evt);
}

window.onload = function() {
  document.addEventListener('keypress',  showEventProperties, false);
}
代码语言:javascript
运行
复制
<input onkeypress="showEventProperties(event)">
<br>
<button onclick="sendTab(this)">Do tab</button><button>Next button</button>
<p id="details"></p>

您也可以尝试较旧的 initKeyEvent

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44109527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档