键盘事件
onkeydown
按键被按下
对于onkeydown来说一直按着不放的话,事件会一直触发
当onkeydown连续触发时,第一次和第二次中间间隔时间长,然后非常快
这种设置为了防止误操作的发生
onkeyup
按键被松开
键盘事件一般都会绑定给能够获取到焦点的对象或者是document
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
</style>
</head>
<body>
<input type="text" name="" id="" />
</body>
<script>
window.onload = function () {
// document.onkeydown = function (event) {
//兼容所有浏览器
// event = event || window.event
// // 可以通过keyCode来获取按键的编码
// // 通过它可以判断哪个按键被按下
// // 除了keyCode,事件对象中还提供了几个属性
// /*
// altKey
// ctrlKey
// shiftKey
// 这三个用来判断alt,ctrl,shift是否被按下
// 如果按下则返回true,否则返回false
// */
// console.log("按键按下了");
// // 判断y是否被按下
// if (event.keyCode == 89) {
// console.log("y键被按下了");
// }
// // 判断y和ctrl是否同时被按下
// if (event.keyCode == 89 && event.ctrlKey) {
// console.log("ctrl和y都被按下");
// }
// console.log(event.keyCode);
// }
// document.onkeyup = function () {
// console.log("按键松开了");
// }
var input = document.getElementsByTagName("input")[0]
input.onkeydown = function(event){
event = event || window.event
console.log(event.keyCode);
// if(event.keyCode)
// 大键盘数字48-57 小键盘数字96-105
// 使文本框中不能输入数字
if((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)){
return false
}
// 在文本框中输入内容,属于onkeydown的默认行为
// 如果在onkeydown中取消了默认行为,则输入的内容,不会出现在文本框中
// return false
}
}
</script>
</html>