你如何判断大写锁定是否在使用JavaScript?
2022-08-30 00:26:02
你如何判断大写锁定是否在使用JavaScript?
但有一点需要注意:我做了谷歌搜索,我能找到的最好的解决方案是将事件附加到每个输入,然后每次检查按下的字母是否大写,如果是,然后检查Shift是否也被按住。如果不是,则必须打开大写锁定。这感觉真的很脏,只是...浪费 - 肯定有比这更好的方法吗?onkeypress
你如何判断大写锁定是否在使用JavaScript?
但有一点需要注意:我做了谷歌搜索,我能找到的最好的解决方案是将事件附加到每个输入,然后每次检查按下的字母是否大写,如果是,然后检查Shift是否也被按住。如果不是,则必须打开大写锁定。这感觉真的很脏,只是...浪费 - 肯定有比这更好的方法吗?onkeypress
在jQuery中,
$('#example').keypress(function(e) {
var s = String.fromCharCode( e.which );
if ( s.toUpperCase() === s && s.toLowerCase() !== s && !e.shiftKey ) {
alert('caps is on');
}
});
避免错误,如退格键,是必需的。s.toLowerCase() !== s
您可以使用 来检测许多键,包括最新浏览器上的大写锁定。KeyboardEvent
getModifierState
函数将提供以下各项的状态:
passwordField.addEventListener( 'keydown', function( event ) {
var caps = event.getModifierState && event.getModifierState( 'CapsLock' );
console.log( caps ); // true when you press the keyboard CapsLock key
});