javascript - 如何将click事件的回调与keydown事件的回调结合起来?
问题描述
在编写代码时,我注意到我在两个回调函数中重复了两次相同的代码:
document.querySelector(DOM.usernameInput).addEventListener("keydown", e => {
if (e.keyCode === 13) {
e.preventDefault();
UI.events.form.password.show();
}
});
document.querySelector(DOM.next).addEventListener('click', (e)=>{
e.preventDefault();
UI.events.form.password.show();
});
我试图编写一些算法来实现这个目标,但我仍然无法达到那个目标。
解决方案
引入一个新函数并将通用逻辑移至该函数。
请看一看。
function showPassword(event) {
event.preventDefault();
UI.events.form.password.show();
}
document.querySelector(DOM.usernameInput).addEventListener("keydown", e => {
if (e.keyCode === 13) {
showPassword(e);
}
});
document.querySelector(DOM.next).addEventListener('click', showPassword);
我希望这可以帮助你。