在我的组件中,我想在特定的按键代码上触发一个假的 onKeypress,这可能吗?我有这个代码:
class componentName extends Component {
fireKey = e => {
function makeKeyPressEvent(keyName, keyCode, charCode){
var event = new KeyboardEvent('keypress');
Object.defineProperties(event, {
charCode: {value: charCode},
keyCode: {value: keyCode},
keyIdentifier: {value: keyName},
which: {value: keyCode}
});
return event;
}
window.addEventListener('keypress', function(event){
console.log('key pressed!',
event.keyIdentifier, event.keyCode, event.charCode, event)
}, true);
var enterKeyEvent = makeKeyPressEvent('onClick', 39, 39);
window.dispatchEvent(enterKeyEvent);
}
render (
) {
return (
<div>
<button onClick={this.fireKey}> > </button>
</div>
)
}
}
或者我如何手动更改 react 中按钮的 onClick 事件 keyCode?p>
最佳答案
you can use this:-
class componentName extends Component {
fireKey = e => {
if(e.keyCode == 13){ //compare with your keyboard key
//your code here
}
}
render () {
return (
<div>
<button onKeyPress={this.fireKey}> > </button>
</div>
)
}
}
关于javascript - 在 react 中触发 onClick 按键事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49326311/