首页 > 这个能判断tab键?按下去不应该就是按tab键啊

这个能判断tab键?按下去不应该就是按tab键啊

function keyDown(event){
  var inputs = $(".txt");
  var focus = document.activeElement;
  if(!document.getElementById('mm').contains('focus')){
    return;
  };
  var event = window.event||event;
  var key = event.keyCode;
  var flag = -1;

  for(var i=0;i<inputs.length;i++){
    if(inputs[i]===focus){
      break;
    }
  };
  switch(key){
    case 38:
    var j=i-2;
    var flag=false;
    if(inputs.get(j).disabled==false){
      flag==true;
    }else{
      for(j=i-4;j>=0;j=j-2){
        if(inputs.get(j).disabled==false){
          flag = true;
          break;
        }
      }
    }
    if(flag){
      inputs[j].focus();
    }
    break;
  case 40:
      var j = i+2;
      var flag = false;
      if(inputs.get(j).disabled==false){
        flag = true;
      }else{
        for(j=i+4;j<inputs.length;j=j+2){
          if(inputs.get(j).disabled==false){
            flag=true;
            break;
          }
        }
      }
      if(flag){
        inputs[i].focus();
      }
      break;
    case 13:
        event.returnValue = false;
        var j = i+2;
        var flag = false;
        if(inputs.get(j).disabled==false){
          flag=true;
        }else{
          for(j=i+4;j<=inputs.length-1;j=j+2){
            if(inputs.get(j).disabled==false){
              flag = true;
              break;
            }
          }
        }
        if(flag){
          inputs[j].focus();
        }
        break;
  }
}

直接判断keyCode不行吗,搞这么麻烦?


如果是用jq的话

$(document).on('keydown','input',function(e){
          if(e.key == 'Tab' || e.keyCode == 9){
            // do something
          }
        })

这样就可以了:)

【热门文章】
【热门文章】