- From: Rob Garrison <wowmotty@gmail.com>
- Date: Mon, 14 Dec 2015 14:00:46 -0600
- To: www-dom@w3.org
- Message-ID: <CAKOB1kRXw5nyz4diUwvBb=umxENst77u9wa=NKFVKXF2z8aSRA@mail.gmail.com>
Hi! There is no way to determine the actual state of a caps lock key. I would like to request an enhancement of the event object to include the caps lock state: ```js document.addEventListener( 'keydown', function( event ) { if ( event.capsLock ) { alert( 'caps lock on!' ); } }); ``` This basic method targets the "a" through "z" and capital "A" through "Z" characters to make a comparison. This method does not include accented characters that would be available on non-U.S. or international keyboards, and it can only be used during a "keypress" event. "keypress" is the only event in which `event.charCode` returns accurate values. ```js document.addEventListener( 'keypress', function( event ) { var k = event.charCode; // ASCII uppercase A = 65; ascii uppercase Z = 90 if ( ( ( k >= 65 && k <= 90 ) && !event.shiftKey ) || // ASCII lowercase a = 97; ASCII lowercase z = 122 ( ( k >= 97 && k <= 122) && e.shiftKey ) ) { alert( 'caps lock on!' ); } }); ``` I know modern keyboards are starting to replace the caps lock key with a control key, but I think this would still be a useful addition. Thanks for your attention.
Received on Monday, 14 December 2015 20:01:13 UTC