防止默认浏览器按键在javaScript中使用键名而不是键代码实现键组合
我正在创建一个web应用程序,需要在其中添加一些特定数量的按键功能。我正在从sql查询中获取这些键。由于我从DB取钥匙,因此我不能使用钥匙代码(钥匙“F”代码为“70”)。我尝试了以下代码,但它不起作用。有人能解释一下吗防止默认浏览器按键在javaScript中使用键名而不是键代码实现键组合,javascript,jquery,asp.net-mvc-4,Javascript,Jquery,Asp.net Mvc 4,我正在创建一个web应用程序,需要在其中添加一些特定数量的按键功能。我正在从sql查询中获取这些键。由于我从DB取钥匙,因此我不能使用钥匙代码(钥匙“F”代码为“70”)。我尝试了以下代码,但它不起作用。有人能解释一下吗 <script type="text/javascript"> $(document).keyup(function (e) { if (e.key = "F" && e.altKey) {
<script type="text/javascript">
$(document).keyup(function (e) {
if (e.key = "F" && e.altKey) {
alert('done');
e.preventDefault();
}
})
});
</script>
$(文档).keyup(函数(e){
如果(e.key=“F”&&e.altKey){
警报(“完成”);
e、 预防默认值();
}
})
});
F键的键代码为70
document.getElementById('foo').onkeydown = function(e) {
e = e || window.event;
//alert(e.keyCode);
switch( e.keyCode || e.which) {
case 70: // F key
case 65: // A key
if( e.altKey) {
return false;
}
}
}
在第一个input
和第二个input
上单击ALT+F
,查看差异
注:在chrome上测试F键的键码为70
document.getElementById('foo').onkeydown = function(e) {
e = e || window.event;
//alert(e.keyCode);
switch( e.keyCode || e.which) {
case 70: // F key
case 65: // A key
if( e.altKey) {
return false;
}
}
}
在第一个input
和第二个input
上单击ALT+F
,查看差异
注意:在chrome上测试请阅读本文:请阅读本文:我不能将密钥代码用作,因为我正在从sql DB获取密钥。我不能更改数据库。因此,我只能使用特定的键字母来代替键代码。@code,在数据库中存储和检索像键代码这样的东西是非常昂贵的。它们可以很容易地存储在一个JS对象中。我不能使用密钥代码,因为我是从sql数据库获取密钥的。我不能更改数据库。因此,我只能使用特定的键字母来代替键代码。@code,在数据库中存储和检索像键代码这样的东西是非常昂贵的。它们可以很容易地存储在JS对象中。