功能
检测是否开启大写功能
代码
<!DOCTYPE html>
<html>
<head>
<title>检测大小写</title>
</head>
<body style="text-align:center;">
Input:<input type="text" onmouseenter="geek(event)" onmouseout="geek(event,'')">
<p id="p"></p>
<script>
function geek(event, value = '已开启大写!') {
var doc = event.getModifierState("CapsLock");//当开启大写按键(CapsLock)时,返回true
if(doc) document.getElementById("p").innerHTML = value;
}
</script>
</body>
</html>
<!--
mouseEvent getModifierState()用于返回指定的修饰键的状态,该修饰键在事件发生时一直处于按下状态。如果按下指定的修改键,则返回true;否则,返回false。
仅在按下以下修饰键时才会激活它们:Alt,Control,Meta,Shift。
还有一些修改键,在单击它们时会被激活,而在再次单击时会被停用:CapsLock,ScrollLock和NumLock。
用法:
event.getModifierState(key)
参数:
key:它指的是修饰键。区分大小写。
返回值:它返回一个布尔值,该值指示是否激活了指定的修饰键。
真正:表示按下或激活了指定的修饰键。
假:表示未按下指定的修饰键。
例:在此示例中,如果激活了CapsLock,则将显示true,否则显示false。要查看效果,请在打开/关闭CapsLock后单击输入元素。
-->
总结
通过修改参数还可以检测是否开启数字锁和滚动锁