search

Home  >  Q&A  >  body text

javascript - 火狐下不支持event.keyCode,在网上找了其他兼容的代码,但还是无法兼容,求助!

在网上找了其他兼容的代码

var evt = window.event ? window.event : e; 
var keycode = evt.keyCode ? evt.keyCode : evt.which;

// keyCode=13是回车键
if (keycode == "13") {
    $('.queding').click();
}

var lKeyCode = (navigator.appname == "Netscape") ? event.which : event.keyCode;
if ( lKeyCode == 13 ){
    $('.queding').click();
}

但写了之后还是不兼容...

大家讲道理大家讲道理2826 days ago374

reply all(4)I'll reply

  • 怪我咯

    怪我咯2017-04-10 15:18:46

    var event=arguments.callee.caller.arguments[0]||window.event;//消除浏览器差异
    if (event.keyCode == 13){
    $(".queding").click();
    }
    上面那些代码就把问题解决了...

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 15:18:46

    看你代码有用jquery,如果e是在jquery事件绑定函数里面的形参,那么可以用e.which标准化

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 15:18:46

    感觉你的写法有很大的问题,你是想实现敲击回车后响应事件是吧!这里我举个例子,比如你要实现敲击回车后执行$('.queding').click();这行代码,可以监听document的keydown或者keyup事件:具体如下:
    document.onkeydown = function(e){
    if(e.keyCode === 13){
    $('.queding').click();
    }
    }

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-10 15:18:46

    function keyUp(e) {  
        var currKey=0,e=e||event;  
        currKey=e.keyCode||e.which||e.charCode;  
        var keyName = String.fromCharCode(currKey);  
        alert("按键码: " + currKey + " 字符: " + keyName);  
    }  
    document.onkeyup = keyUp;
    

    网上找到的一串代码,一直在使用

    reply
    0
  • Cancelreply