用 JavaScript 检测键盘大写锁定键的状态 - JS 判断大写锁定

用户在输入密码的时候,由于看不到输入的字母,这时如果 Caps Lock 大写锁定键打开,会给用户造成不必要的困扰。让我们看看如何使用JavaScript检测大写锁定。

KeyboardEvent 上有一个名为 getmodifierState 的方法,我们可以使用它来执行此操作。这可以在键盘相关事件的事件侦听器内部访问:

js 复制代码
document.querySelector('input[type=password]')
  .addEventListener('keyup', (keyboardEvent) => {
    const isCapsLockOn = keyboardEvent.getModifierState('CapsLock');
    if (isCapsLockOn) {
        // code for notifying the user goes here
    }
});

这段代码告诉我们如何使用 JavaScript 检测大写锁定键。如果我们愿意的话,我们还可以使用 keydown 方法而不是 keyup。但 keyup 有更好的浏览器支持,所以我们更喜欢使用它。如果您有任何问题,请在评论中告诉我们。

参考文档:How to detect caps lock with JavaScript

相关推荐
-银雾鸢尾-7 分钟前
C#中的抽象类与抽象方法
开发语言·c#
acheding16 分钟前
File System Access API 实战:让网页真正读写本地文件
前端·javascript·vue.js·编辑器·markdown
何时梦醒17 分钟前
⚛️ React 19 + TypeScript 深度学习笔记 —— 从组件化思维到 WebGPU 端侧 AI 落地
前端·javascript·人工智能
萧瑟余晖17 分钟前
JDK 20 新特性详解
java·开发语言
benchmark_cc19 分钟前
如何用 Python 进行多周期 K 线合成与时区对齐?基于 QuantDash 与 Pandas 的量化数据清洗实战(附 GitHub 源码)
开发语言·python·github·盯盘·pandas·quantdash·量化数据
用户9385156350722 分钟前
从 Vite 脚手架到 WebGPU 推理:手写一个 DeepSeek-R1 浏览器端大模型 Demo
javascript·人工智能·全栈
acheding25 分钟前
把 CodeMirror 6 调教成 Markdown 编辑器:扩展、装饰与门面
javascript·vue.js·编辑器·markdown
labixiong30 分钟前
TypeScript 7.0 编译器用 Go 重写,速度暴增10倍——背后到底做了什么?
前端·javascript·go
2301_7944615734 分钟前
Activiti/BPMN 2.0 的 4 种网关
java·服务器·开发语言
weedsfly39 分钟前
一个电商价格计算案例,带你学会前端开发中的责任链模式
前端·javascript·面试