1.onkeyup 和onkeydown时,keyCode是不区分大小写的,会将小写字母自动转化为大写字母。
2 onkeypress时,区分大小写。
3兼容event.keyCode||event.which
document.onkeypress = function(event){
event = event||window.event;
//返回onkeypress事件触发的键的值得字符代码,或者onkeydown或者onkeyup事件的键的代码。
var code = event.keyCode || event.which;
document.title = code+","+String.fromCharCode(code);
}
组合键 ctrlKey,altKey,shiftKey
Ctrl+Enter 提交效果;
当按下键盘的enter时,有些浏览器显示10(换行),有些显示13(回车)。
按照先后顺序,先13回车,后10换行。
计算机中其他的一些软件中的热键可能与我们设置的组合键冲突。
onkeypress时,shift+1时,显示的是code拿到的值是!的code值 而非1的code值。
event.ctrlKey&&(code==10||code==13)// 兼容写法;
事件从子节点向上依次传递给父节点的现象,叫做事件冒泡。
阻止事件冒泡的方法:
event.stopPropagation();//w3c规范写法;
event.cancelBubble = true; //IE写法(虽然是IE方法,但是好多浏览器厂商也支持。)