我有一个场景,我必须准备一个JS方法,其中Tab键应该触发。即当执行功能时,应触发Tab键按钮。最好使用密钥代码。
答案 0 :(得分:0)
您可以调度键盘事件,但结果可能不会太大。
如下所示,您可以调度具有适当属性的事件,但在某些浏览器中,值为空,浏览器实际上忽略它。您可以选择按钮,然后按"输入"点击它。它会调度一个选项卡,但焦点不会移动,相关事件也不会报告构造函数中设置的值。
输入输入会显示您应该获得的结果类型。在很多浏览器中试用它。
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);
}
&#13;
<input onkeypress="showEventProperties(event)">
<br>
<button onclick="sendTab(this)">Do tab</button><button>Next button</button>
<p id="details"></p>
&#13;
您还可以尝试较旧的initKeyEvent。