假设我们有这段代码:
<html><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript">
var p = 0;
function reset()
{
// some efforts
}
function code(e) {
e = e || window.event;
return(e.keyCode || e.which);
}
window.onload = function(){
document.onkeypress = function(e){
var key = code(e);
if(key == 38 || key == 40)
{}
else if(e.altKey)
{
alert('altkey pressed');
}
else
{
// Another THING!
}
};
};
</script>
</head>
<body style="padding:30px; font-size:30px;font-family: Courier;">
<span onclick="reset();" accesskey="r"></span>
</body>
</html>
它适用于Firefox,但不适用于IE浏览器
当我将alt
更改为shift
时,它适用于所有浏览器。但正如您可能注意到的,我想将其用于快捷键,我认为这是Chrome和IE中 Alt 键的问题(因为两者都使用 Alt for {{ 1}}属性但Firefox使用 Alt + Shift 作为指导here)。
那么大家你建议我做什么?
答案 0 :(得分:1)
你无法在chrome上检测 alt 按钮,因为它启用了窗口菜单,因此你的页面失去了焦点和事件&#34; keypress&#34;不叫。活动&#34; keydown&#34;另一方面被调用,所以你可以毫无问题地使用它。