【问题标题】:How do I detect the CAPS LOCK state in a password field [duplicate]如何检测密码字段中的 CAPS LOCK 状态[重复]
【发布时间】:2011-06-16 04:15:23
【问题描述】:

可能重复:
How do you tell if caps lock is on using JavaScript?

在网页表单中,有没有办法判断大写锁定是否打开?

我想我可以检查一下onChange,看看所有字符是否都是大写的。但是有没有更直接的方法来做到这一点?

具体来说,我希望在他们输入密码字段时实现“YOUR CAPS LOCK IS ON”消息,类似于 Windows 登录屏幕的方式。

【问题讨论】:

  • 我希望没有,因为这应该是浏览器的工作。
  • 只检查字符是否大写并且没有点击shift,然后警告用户..
  • @ifaour 这听起来是个好主意!可能值得回答。
  • @Pekka:已经有一个了,嗯……很多;例如,检查 McStretch 提供的欺骗。

标签: javascript


【解决方案1】:

你可以在这里找到一个很好的例子:http://www.codeproject.com/KB/scripting/Detect_Caps_Lock.aspx

您可以获取该代码并将其包装到不同类型的事件中,即 onfocus 或文档加载。

你可以用谷歌搜索关键代码的索引(我会发布一个链接,但我没有足够高的业力来发布多个链接,抱歉)。

为简单起见,您要查找的代码是 20(大写锁定)。


从网站复制的说明(许可证:CPOL

构建脚本

<script language="Javascript">
function capLock(e){
 kc = e.keyCode?e.keyCode:e.which;
 sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false);
 if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk))
  document.getElementById('divMayus').style.visibility = 'visible';
 else
  document.getElementById('divMayus').style.visibility = 'hidden';
}
</script>

现在我们的脚本准备好了。我们现在需要将此脚本与我们的表单相关联。

使用脚本

让我们添加两个项目:一个文本框和一个 DIV。现在我们只需要调用 onKeyPress 事件。

<input type="password" name="txtPassword" onkeypress="capLock(event)" />
<div id="divMayus" style="visibility:hidden">Caps Lock is on.</div> 

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-25
  • 1970-01-01
  • 2019-01-10
  • 1970-01-01
  • 2021-02-22
  • 1970-01-01
相关资源
最近更新 更多