.keyCode 与 .which

js

1个回答

写回答

ghost02

2025-07-02 05:20

+ 关注

Java
Java

使用keyCode与which属性获取按键信息

在JavaScript中,我们可以使用keyCode和which属性来获取用户按下的键盘按键信息。这两个属性是事件对象的属性,可以在事件处理函数中使用。在本文中,我们将介绍如何使用keyCode和which属性,并提供一些案例代码来帮助理解。

keyCode属性

keyCode属性返回一个整数值,代表用户按下的键盘按键的键码。每个键盘按键都有一个唯一的键码值,可以用来判断用户按下的是哪个键。例如,keyCode为13表示用户按下了回车键,keyCode为37表示用户按下了左箭头键。

下面是一个示例代码,演示了如何使用keyCode属性来获取用户按下的键盘按键的键码:

Javascript

document.addEventListener('keydown', function(event) {

var keyCode = event.keyCode;

console.log('KeyCode: ' + keyCode);

});

在上面的代码中,我们给文档对象添加了一个keydown事件的监听器。当用户按下键盘上的任意按键时,事件处理函数就会被调用。在事件处理函数中,我们使用event对象的keyCode属性来获取键码,并将其打印到控制台上。

which属性

which属性与keyCode属性类似,也返回一个整数值,代表用户按下的键盘按键的键码。不过,which属性在一些浏览器中被废弃了,因此不是所有浏览器都支持。为了兼容性考虑,我们可以同时使用keyCode和which属性来获取键码。

下面是一个示例代码,演示了如何使用which属性来获取用户按下的键盘按键的键码:

Javascript

document.addEventListener('keydown', function(event) {

var which = event.which || event.keyCode;

console.log('Which: ' + which);

});

在上面的代码中,我们使用了逻辑或运算符来获取which属性的值。如果浏览器支持which属性,则使用which属性的值;否则,使用keyCode属性的值。

案例代码

下面是一个案例代码,演示了如何根据用户按下的键盘按键的键码执行不同的操作:

Javascript

document.addEventListener('keydown', function(event) {

var keyCode = event.keyCode;

switch(keyCode) {

case 37:

console.log('用户按下了左箭头键');

break;

case 38:

console.log('用户按下了上箭头键');

break;

case 39:

console.log('用户按下了右箭头键');

break;

case 40:

console.log('用户按下了下箭头键');

break;

default:

console.log('用户按下了其他键');

break;

}

});

在上面的代码中,我们使用switch语句来根据用户按下的键盘按键的键码执行不同的操作。如果用户按下了左箭头键,就打印"用户按下了左箭头键";如果用户按下了上箭头键,就打印"用户按下了上箭头键",依此类推。

在本文中,我们介绍了如何使用keyCode和which属性来获取用户按下的键盘按键的键码。我们还提供了一些案例代码来帮助理解。通过使用keyCode和which属性,我们可以根据用户按下的键盘按键执行不同的操作,以提升用户体验和交互性。

举报有用(4)分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号