实现代码如下:

(function($){
var no_ie_pr=function(e){
var _this=e;
var tabpr=function(e){
_this.attr('tabIndex', 1).click(function(){
_this.focus();
});
if(!$.browser.msie){
_this.css("outline-style", "none");
}
}
var gettag=_this[0].tagName.toLowerCase();
var oe=['abbr','acronym','address','b','bdo','big','blockquote','center','cite','dd','del','dir','dfn','dl','dt','em','font','form','h1','h2','h3','h4','h5','h6','i','ins','img','ins','kbd','li','menu','ol','p','pre','q','s','samp','small','strike','strong','sub','sup','th','tr','tt','u','ul','var'];
if($.inArray(gettag,oe)!=-1){
tabpr();
}else{
if ($.browser.msie) {
var ce=['span','div'];
if($.inArray(gettag,ce)!=-1){
//IE只对绝对定位元素和固定定位元素有效,加tabIndex无法消除虚线
}else{
var ce=['label','legend','tbody','tfoot','thead'];
if($.inArray(gettag,ce)!=-1){
tabpr();
}
}
}else{
var ce=['caption','fieldset','table','td','code','div','span','label','legend','tbody','tfoot','thead'];
if($.inArray(gettag,ce)!=-1){
tabpr();
}
}
}
}

$.fn.oldKeyup=$.fn.keyup;
$.fn.keyup=function(fn){
no_ie_pr(this);
$(this).oldKeyup(fn);
}

$.fn.oldKeypress=$.fn.keypress;
$.fn.keypress=function(fn){
no_ie_pr(this);
$(this).oldKeypress(fn);
}

$.fn.oldKeydown=$.fn.keydown;
$.fn.keydown=function(fn){
no_ie_pr(this);
$(this).oldKeydown(fn);
}

})(jQuery)

以上就是【jquery的键盘事件修改代码】的全部内容了,欢迎留言评论进行交流!

赞(0) 踩(0)
发表我的评论

最新评论

  1. 暂无评论