您现在的位置:首页 >> 前端 >> 内容

键盘事件兼容写法e=window.event||e;键盘检测兼容写法key=e.keyCode||e.which||e.charCode;(代码)

时间:2018/3/13 13:58:52 点击:

  核心提示:键盘事件兼容写法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>   

作者:网络 来源:zgjxyszh的博