js常用的键盘事件有哪些(用法示例)_键码keyCode对照表

yizhihongxing

下面就针对题目中提到的问题进行详细的讲解。

1. JS常用的键盘事件有哪些

在 JS 中,常用的键盘事件包括:keydown、keypress 和 keyup。它们分别表示键盘按下、按住不放和松开三个状态。其中,keydown 和 keyup 的响应速度比较快,但是无法获取到按住不放的过程;keypress 响应相对较慢,但能够获取按住不放的过程。一般情况下,我们会根据具体的需求来选择使用哪个事件。

2. keyCode 对照表

keyCode 是键盘事件对象中的一个属性,它用于获取按下的键的 ASCII 码值,从而实现不同的交互效果。下面是 keyCode 值与相应按键的对照表:

keyCode 键名
8 Backspace
9 Tab
13 Enter
16 Shift
17 Ctrl
18 Alt
19 Pause/Break
20 Caps Lock
27 Esc
32 Spacebar
33 Page Up
34 Page Down
35 End
36 Home
37 Left
38 Up
39 Right
40 Down
45 Insert
46 Delete
91 Win
92 Win
93 Menu
96 0
97–122 a–z
48–57 0–9
112–123 F1–F12

3. 用法示例

示例一:判断按下的键是否为回车键

下面是一个示例,用于判断按下的键是否为回车键:

document.onkeydown = function (event) {
    var e = event || window.event || arguments.callee.caller.arguments[0];
    if (e && e.keyCode === 13) {
        // 处理回车键按下的逻辑
        console.log("按下的是回车键");
    }
};

在上面的代码中,我们通过 document.onkeydown 绑定了一个键盘按下事件。当用户按下任意键时,会触发这个事件。然后我们通过获取事件对象 event,再通过 keyCode 属性获取按下的键的值,如果值为 13,则表示按下的是回车键,接着进行相应的处理。

示例二:在输入框中实时显示按键状态

下面是一个示例,用于在输入框中实时显示按键状态:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>示例</title>
</head>

<body>
    <input type="text" id="text-input">
    <p id="state"></p>
    <script>
        var input = document.getElementById("text-input");
        var state = document.getElementById("state");

        input.onkeydown = function (event) {
            var e = event || window.event || arguments.callee.caller.arguments[0];
            if (e) {
                state.innerHTML = "按键状态:<br>"
                    + "Alt: " + e.altKey + "<br>"
                    + "Ctrl: " + e.ctrlKey + "<br>"
                    + "Shift: " + e.shiftKey;
            }
        };
    </script>
</body>

</html>

在上面的代码中,我们创建了一个输入框和一个状态显示框。然后通过 input.onkeydown 绑定了一个键盘按下事件。当用户按下任意键时,会触发这个事件。然后我们通过获取事件对象 event,并通过 altKeyctrlKeyshiftKey 属性获取键盘按键的状态,最后将状态显示在状态显示框中。这样就能实现在输入框中实时显示按键状态的功能了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js常用的键盘事件有哪些(用法示例)_键码keyCode对照表 - Python技术站

(0)
上一篇 2023年6月1日
下一篇 2023年6月1日

相关文章

  • php正则删除html代码中class样式属性的方法 原创

    PHP正则删除HTML代码中class样式属性的方法 在PHP中,删除HTML代码中的Class样式属性是一个常见的需求,我们可以使用正则表达式来完成。下面将介绍如何使用正则表达式来删除HTML代码中的Class样式属性。 使用preg_replace函数 PHP中的preg_replace函数可以使用正则表达式替换子串。我们可以使用此函数删除HTML代码中…

    JavaScript 2023年6月10日
    00
  • asp.net 操作cookie的简单实例

    下面我将详细讲解“ASP.NET 操作 Cookie 的简单实例”完整攻略。 1. 什么是 Cookie? Cookie 是一种被网站服务器发送给用户浏览器的短文本字符串,通常用于记录用户的一些信息,如用户名、购物车信息等等。它被浏览器保存并用于后续的请求中,让网站能够更好地向用户提供服务。 2. ASP.NET 如何操作 Cookie? ASP.NET 中…

    JavaScript 2023年6月10日
    00
  • js数组forEach实例用法详解

    JavaScript Array forEach() 方法详解 JavaScript中的forEach()函数是用于数组循环的方法,可以遍历数组的每个元素并对其进行操作。该方法在ECMAScript 5 (ES5)中被引入,不仅适用于所有数组,而且可以处理类数组对象。 语法 forEach() 方法有两个参数,第一个是一个回调函数,第二个是可选的this值。…

    JavaScript 2023年5月27日
    00
  • 详解从Vue-router到html5的pushState

    详解从Vue-router到html5的pushState 背景介绍 Vue-router 是 Vue.js 官方提供的路由管理器。它和Vue.js 完全集成,支持HTML5历史模式或hash模式,在前端路由中使用非常方便,同时也支持动态路由、嵌套路由和编程式路由等高级功能。 要深入了解Vue-router,首先需要了解什么是前端路由操作,以及 HTML5 …

    JavaScript 2023年6月11日
    00
  • 微信小程序路由跳转两种方式示例解析

    下面我将为你详细讲解“微信小程序路由跳转两种方式示例解析”的完整攻略。 一、前言 在微信小程序的开发中,跳转页面是非常常见的操作。本文将介绍微信小程序路由跳转的两种方式,分别是 wx.navigateTo 和 wx.redirectTo。 二、 wx.navigateTo wx.navigateTo 是保留当前页面,跳转到应用内的某个页面。该跳转方式支持返回…

    JavaScript 2023年6月11日
    00
  • Javascript延迟执行实现方法(setTimeout)

    下面是关于Javascript延迟执行实现方法(setTimeout)的详细讲解。 简介 JavaScript中的setTimeout()方法是用于在一定时间后执行指定的函数或一段代码。常用于实现延迟执行、定时器等功能。 语法格式 setTimeout(function, milliseconds, arg1, arg2, …); function:必需…

    JavaScript 2023年5月27日
    00
  • 一个查看session内容的函数

    来介绍一下如何编写一个查看 session 内容的函数。 1. 编写函数头部和注释 我们首先需要定义函数的名称和参数,以及函数的用途、功能等相关注释信息。示例代码如下: def show_session(session): """ 显示 session 内容的函数 :param session: Flask 中的 session…

    JavaScript 2023年6月11日
    00
  • 将字符串中由空格隔开的每个单词首字母大写

    要将字符串中由空格隔开的每个单词首字母大写,可以使用字符串操作方法和正则表达式。 步骤如下: 首先要将字符串进行拆分,将每个单词分离。可以使用split()方法,该方法可以按照指定字符或正则表达式对字符串进行分割,返回一个由分割出来的子字符串组成的数组。 例如: let str = "hello world"; let arr = str…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部