小码哥的IT人生

onkeypress 事件

JavaScript基础 2022-06-08 12:00:46小码哥的IT人生shichen

onkeypress 事件

实例

当用户按下一个键时执行 JavaScript:

<input type="text" onkeypress="myFunction()">

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>当用户在输入字段中按下一个键时会触发函数。</p>
<input type="text" onkeypress="myFunction()">
<script>
function myFunction() {
  alert("You pressed a key inside the input field");
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

定义和用法

onkeypress 事件在用户按下键(在键盘上)时发生。

提示:与 onkeypress 事件相关的事件顺序:

  1. onkeydown
  2. onkeypress
  3. onkeyup

注释:不是所有键(例如 ALT、CTRL、SHIFT、ESC)都会在所有浏览器中触发 onkeypress 事件。如需只检测用户是否按下了某个键,请改用 onkeydown 事件,因为它适用于所有键。

浏览器支持

事件 Chrome IE Firefox Safari Opera
onkeypress 支持 支持 支持 支持 支持

语法

在 HTML 中:

<element onkeypress="myScript">

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>本例演示如何将 "onkeypress" 事件分配给 input 元素。</p>
<p>Press a key inside the text field to set a red background color.</p>
<input type="text" id="demo" onkeypress="myFunction()">
<script>
function myFunction() {
  document.getElementById("demo").style.backgroundColor = "red";
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

在 JavaScript 中:

object.onkeypress = function(){myScript};

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>本例使用 HTML DOM 将 "onkeypress" 事件分配给 input 元素。</p>
<p>在文本字段内按一个键可设置红色背景颜色。</p>
<input type="text" id="demo">
<script>
document.getElementById("demo").onkeypress = function() {myFunction()};
function myFunction() {
  document.getElementById("demo").style.backgroundColor = "red";
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

在 JavaScript 中,使用 addEventListener() 方法:

object.addEventListener("keypress", myScript);

完整实例:

<!DOCTYPE html>
<html>
<body>
<p>本例使用 addEventListener() 方法将 "keypress" 事件附加到 input 元素。</p>
<p>在文本字段内按一个键可设置红色背景颜色。</p>
<input type="text" id="demo">
<script>
document.getElementById("demo").addEventListener("keypress", myFunction);
function myFunction() {
  document.getElementById("demo").style.backgroundColor = "red";
}
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

注释:Internet Explorer 8 或更早的版本不支持 addEventListener() 方法

技术细节

冒泡: 支持
可取消: 支持
事件类型: KeyboardEvent
支持的 HTML 标签: 所有 HTML 元素,除了:<base>, <bdo>, <br>, <head>, <html>, <iframe>, <meta>, <param>, <script>, <style> 以及 <title>
DOM 版本: Level 2 Events

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024