这是代码和浏览器截图,第一个是number 第二个也是number 但是第三个就是NaN了
我想取得一个组合键,比如Alt+1……Alt+9 然后让键值减去一个数,对应select的option的值
但是一直报NaN
$(function(){
$(document).keydown(function(event){
if(event.keyCode <=57 && event.keyCode >= 49 && event.altKey){
var selectval = (event.keyCode - 48);
console.log(typeof(event.keyCode));
console.log(typeof(selectval));
console.log(selectval);
}
});
})
曾经蜡笔没有小新2017-05-19 10:32:37
用原生写的没啥毛病啊
document.addEventListener('keydown',function(event){
if(event.keyCode <=57 && event.keyCode >= 49 && event.altKey){
var selectval = (event.keyCode - 48);
console.log(typeof(event.keyCode));
console.log(typeof(selectval));
console.log(selectval);
}
},false);
过去多啦不再A梦2017-05-19 10:32:37
换了几个环境,终于出现这种情况,都是谷歌最高版本,不知道怎么有几台电脑就不会undefined
新变量接收的keyCode 为undefined ;
至于为什么我暂未搞懂,麻烦哪位大神解释一下其中的机制
过去多啦不再A梦2017-05-19 10:32:37
jQuery的话,帮你做了兼容处理的,请用 event.which
代替event.keyCode
.
不用jQuery:
// 获取用户单击键盘的“键值”
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;