我正在尝试在输入的焦点事件上获取大写锁定状态,这是我的代码
$('#Input')[0].addEventListener('focus', function (key) {
if (key.originalEvent.getModifierState("CapsLock"))
//do something...
else {
//do something..
}
});
但是我收到此错误“无法读取未定义的属性'getModifierState'”,而且我不知道自己在做什么错。
一些建议或链接,以便提前阅读谢谢。
最佳答案
有不同类型的事件对象。 getModifierState
仅为KeyboardEvent
(例如keydown
)和MouseEvent
(例如click
)定义; focus
都不是。
您可能会考虑使用click
并记住您是否已经集中注意力(例如,如果点击是在已经集中的元素中,那么就不会重复该操作)。 gh,不,这是一个可怕的建议。除了点击之外,您的元素还有很多其他可以吸引焦点的方法。