核心提示:键盘事件兼容写法e=window.event||e;键盘检测兼容写法key=e.keyCode||e.which||e.charCode;(代码)!DOCTYPE htmlhtml head meta...
键盘事件兼容写法e=window.event||e;键盘检测兼容写法key=e.keyCode||e.which||e.charCode;(代码)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Firefox 提示event is not defined错误的解决办法,需要传参</title>
<!-- <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> -->
</head>
<body>
<h1>keyCode==13即当键盘回车enter时,触发事件</h1>
<input type="text" />
<p id="demo"></p>
<script language="javascript">
//jquery
/*$(document).ready(function(){
$("input").keydown(function(event){
$("#demo").html("Key: " + event.which);
});
});*/
var ipt = document.getElementsByTagName('input')[0];
function addHandler(element, type, handler){
if (element.addEventListener){
element.addEventListener(type, handler, false);
} else if (element.attachEvent){
element.attachEvent("on" + type, handler);
} else {
element["on" + type] = handler;
}
}
addHandler(ipt,"keydown",function(e){
var e=window.event||e; //事件兼容写法
var key = e.keyCode || e.which || e.charCode; //IE只有keyCode属性,FireFox中有which和charCode属性,Opera中有keyCode和which属性,Chrome中有keyCode、which和charCode属性。
document.getElementById("demo").innerHTML = "Key: " + key;
})
//js
document.onkeydown=function mykeyDown(e){
var e=window.event||e;
var key = e.keyCode || e.which || e.charCode;
if(key == 13){alert('keyCode==13即当键盘回车enter时');}
return;
}
</script>
</body>
</html>


