KeyboardEvent which 属性
定义和用法
which 属性返回触发 onkeypress ایوینٹ 的按键的 Unicode 字符码,或触发 onkeydown 或 onkeyup 事件的按键的 Unicode 按键代码。
两种代码类型的区别:
- 字符代码 - 代表 ASCII 字符的数字
- 按键代码 - 代表键盘上实际键的数字
这些类型并不总是意味着同样的事情。例如,小写 "w" 和大写 "W" 的键盘代码相同,因为在键盘上按下的键是相同的("W" = 数字 "87"),但字符代码不同,因为 resulting 字符是不同的("w" 或 "W",即 "119" 或 "87")- 请查看下面的更多实例,可以对这一点有更好的理解。
提示:اگر آپ چاہتین آپنے یوزر نے پرنٹ کل بٹن(مثلاً'a' یا '5') دبان یا نہیں، ان کی وارننگ پر اس پر اپنا استعمال کریں۔ اگر آپ چاہتین آپنے یوزر نے فونکشن کل بٹن(مثلاً'F1'،'CAPS LOCK' یا 'Home') دبان یا نہیں، ان کی وارننگ پر 'onkeydown' یا 'onkeyup' استعمال کریں۔
注释:IE8 及更早版本不支持 which 属性。对于这些浏览器版本,您可以使用 keyCode 属性。但是,keyCode 属性对 Firefox 中的 onkeypress 事件不起作用。为了跨浏览器解决方案,您可以使用如下代码:
var x = event.which || event.keyCode; // 使用 which 还是 keyCode,取决于浏览器支持
提示:有关所有 Unicode 字符的列表,请参阅我们的 完整 Unicode 参考。
提示:如果要将 Unicode 值转换为字符,请使用 fromCharCode() 方法。
注释:该属性只读。
注释:提供 keyCode 和 which 属性只是为了兼容性。最新版本的 DOM 事件规范建议使用 key 属性代替(如果可用)。
提示:如果您想知道在发生按键事件时是否按下了 "ALT"、"CTRL"、"META" 或 "SHIFT" 键,请使用 altKey、ctrlKey、metaKey 或 shiftKey 属性。
语法
event.which
技术细节
返回值: | 数字值,表示 Unicode 字符代码或 Unicode 键盘代码。 |
---|---|
DOM 版本: | DOM Level 2 Events |
浏览器支持
表中的数字注明了完全支持该属性的首个浏览器版本。
属性 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
which | 支持 | 9.0 | 支持 | 支持 | 支持 |
更多实例
ਉਦਾਹਰਣ
使用 onkeypress 和 onkeydown 来演示字符代码与键盘代码之间的区别:
<input type="text" onkeypress="uniCharCode(event)" onkeydown="uniKeyCode(event)"> function uniCharCode(event) { var char = event.which || event.keyCode; // event.keyCode used for IE8 and earlier versions document.getElementById("demo").innerHTML = "Unicode CHARACTER code: " + char; } function uniKeyCode(event) { var key = event.which || event.keyCode; // event.keyCode used for IE8 and earlier versions document.getElementById("demo2").innerHTML = "Unicode KEY code: " + key; }
Press the "a" key on the keyboard (without using Capslock) when, char and key results will be:
Unicode CHARACTER code: 97 Unicode KEY code: 65
ਉਦਾਹਰਣ
If the user presses the Escape key, then some text will be prompted:
<input type="text" onkeydown="myFunction(event)"> function myFunction(event) { var x = event.which || event.keyCode; // event.keyCode used for IE8 and earlier versions if (x == 27) { // 27 is the ESC key alert ("You pressed the Escape key!"); } }
ਉਦਾਹਰਣ
Unicode ਮੁੱਲ ਨੂੰ ਅੱਖਰ ਵਿੱਚ ਬਦਲੋ (ਫੰਕਸ਼ਨ ਕੀਬੋਰਡ ਨਹੀਂ ਲਾਗੂ):
var x = event.which || event.keyCode; // Unicode ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰੋ var y = String.fromCharCode(x); // ਮੁੱਲ ਨੂੰ ਅੱਖਰ ਵਿੱਚ ਬਦਲੋ
ਸਬੰਧਤ ਪੰਨੇ
HTML DOM ਸੰਦਰਭ ਮੈਨੂਅਲ:KeyboardEvent key کا حصہ
HTML DOM ਸੰਦਰਭ ਮੈਨੂਅਲ:KeyboardEvent keyCode کا حصہ
HTML DOM ਸੰਦਰਭ ਮੈਨੂਅਲ:KeyboardEvent charCode کا حصہ