onkeydown,up和onkeypress的区别 ?
1、从触发的键来区分
onkeydown和onkeyup针对所有的键起作用
onkeypress针对跟编辑有关系的键起作用(如:按字母键,退格键可以触发该事件,但是按shift,ctrl键就不会触发该事件)2、keyCode所代表的意思不同
keyCode属性的意思:
在keydown和keyup事件里,keyCode属性代表的意思是键盘的虚拟码(每个键唯一的编码,跟是否大小写没有关系)
在keypress事件里,keyCode属性代表的意思是键盘的unicode码(ASCII码)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>简易年历</title>
<style type="text/css">
</style>
</head>
<body>
<input id="txt" type="text" />
<input id="btn01" type="button" value="测试01" />
</body>
</html>
<script type="text/javascript">
//onkeydown,up和onkeypress的区别
//1、从触发的键来区分
//
// onkeydown和onkeyup针对所有的键起作用
// onkeypress针对跟编辑有关系的键起作用(如:按字母键,退格键可以触发该事件,但是按shift,ctrl键就不会触发该事件)
//2、keyCode所代表的意思不同
//keyCode属性的意思:
//在keydown和keyup事件里,keyCode属性代表的意思是键盘的虚拟码(每个键唯一的编码,跟是否大小写没有关系)
//在keypress事件里,keyCode属性代表的意思是键盘的unicode码(ASCII码)
window.onload=function(){
//onkeydown:按下
/*
$("txt").onkeydown = function(event){
var evt = event || window.event;
console.log(evt.keyCode);//在keydown和keyup事件里,keyCode属性代表的意思是键盘的虚拟码(每个键唯一的编码)
}
*/
/*onkeyup:弹起
$("txt").onkeyup = function(event){
var evt = event || window.event;
console.log(evt.keyCode);//在keydown和keyup事件里,keyCode属性代表的意思是键盘的虚拟码(每个键唯一的编码)
}
*/
//onkeypress:按下并弹起
$("txt").onkeypress = function(event){
var evt = event || window.event;
console.log(evt.keyCode);//在keypress事件里,keyCode属性代表的意思是键盘的unicode码(ASCII码)
}
}
function $(id){
return document.getElementById(id);
}
</script>