Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法_jquery_脚本之家

2019-12-02 23:34栏目:竞技宝竞猜
TAG:

做项目时,客户要求能够用enter回车直接切换输入,当最后一个时候,直接提交信息。

第一想法就是,网上去copy一段代码直接用。但了百度、谷歌找了个遍,找到的代码80%以上都是一样的。有的代码太老,都不能用。有的只有部分浏览器能用。折腾了半小时也没个合适的办法。最后一想,干脆自己动手。

每次点击回车的时候,获取当前的焦点位置,然后设置它的下一个元素获取焦点;

 $.focus(); document.onkeydown = function enterHandler { var inputs = $; //可自行添加其它过滤条件 var browser = navigator.appName ; //浏览器名称 var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var Code = '' ; if(browser.indexOf // IE Code = window.event.keyCode ; else if(userAgent.indexOf // 火狐 Code = event.which; else // 其它 Code = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode; if  //可以自行加其它过滤条件 { for(var i=0;i<inputs.length;i++) { if(inputs[i].id == document.activeElement.id) { i = i==  ? -1 : i ; $.focus() break; } } } }

其中,因为IE和火狐对键值获取的不同,所以对浏览器做了简单的判断区分。这样就可以在各个浏览器上获取敲击的键值。

最后,获取到当前的值以后,就可以加其它的各种条件了。

演示地址:

版权声明:本文由龙竞技官网发布于竞技宝竞猜,转载请注明出处:Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法_jquery_脚本之家