【转】enter键转tab键 (支持ie,ff,chrome)

 

var isIe = (document.all) ? true : false;

function init(){
    document.onkeydown = function(evt){
        catchKeyDown(evt);
    }
}

function catchKeyDown(evt){
    evt = (evt) ? evt : ((window.event) ? window.event : "");
    var key = isIe ? evt.keyCode : evt.which;

    if (evt.keyCode == 13) {
        var el = evt.srcElement || evt.target;
        if (el.tagName.toLowerCase() == "input" && el.type != "submit") {
           if (isIe) {
              evt.keyCode = 9;
           } else {
              nextCtl(el).focus();
              evt.preventDefault();
           }
       }
    }
}

function nextCtl(ctl) {
var form = ctl.form;
for (var i = 0; i < form.elements.length - 1; i++) {
   if (ctl == form.elements[i]) {
    return form.elements[i + 1];
   }
}
return ctl;
}

window.onload = init;

 

posted @ 2010-03-20 23:15  海浪~~  阅读(572)  评论(0编辑  收藏  举报