Enter回車切換輸入焦點(diǎn)實(shí)現(xiàn)思路與代碼兼容各大瀏覽器
做項(xiàng)目時,客戶要求能夠用enter回車直接切換輸入(焦點(diǎn)),當(dāng)最后一個時候,直接提交信息。
第一想法就是,網(wǎng)上去copy一段代碼直接用。但了百度、谷歌找了個遍,找到的代碼80%以上都是一樣的。有的代碼太老,都不能用。有的只有部分瀏覽器能用。折騰了半小時也沒個合適的辦法。最后一想,干脆自己動手。
一、思路
每次點(diǎn)擊回車的時候,獲取當(dāng)前的焦點(diǎn)位置,然后設(shè)置它的下一個元素獲取焦點(diǎn);
二、代碼
<script type="text/javascript">
$('input:text:first').focus();
document.onkeydown = function enterHandler(event)
{
var inputs = $("input"); //可自行添加其它過濾條件
var browser = navigator.appName ; //瀏覽器名稱
var userAgent = navigator.userAgent; //取得瀏覽器的userAgent字符串
var Code = '' ;
if(browser.indexOf('Internet')>-1) // IE
Code = window.event.keyCode ;
else if(userAgent.indexOf("Firefox")>-1) // 火狐
Code = event.which;
else // 其它
Code = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if (Code == 13) //可以自行加其它過濾條件
{
for(var i=0;i<inputs.length;i++)
{
if(inputs[i].id == document.activeElement.id)
{
i = i== (inputs.length - 1) ? -1 : i ;
$('#'+ inputs[i+1].id ).focus()
break;
}
}
}
}
</script>
其中,因?yàn)镮E和火狐對鍵值獲取的不同,所以對瀏覽器做了簡單的判斷區(qū)分。這樣就可以在各個瀏覽器上獲取敲擊的鍵值。
最后,獲取到當(dāng)前的值以后,就可以加其它的各種條件了。
相關(guān)文章
jQuery獲取復(fù)選框被選中數(shù)量及判斷選擇值的方法詳解
這篇文章主要介紹了jQuery獲取復(fù)選框被選中數(shù)量及判斷選擇值的方法,結(jié)合實(shí)例形式分析了jQuery操作復(fù)選框進(jìn)行判定與統(tǒng)計的相關(guān)技巧,非常具有實(shí)用價值,需要的朋友可以參考下2016-05-05
Jquery實(shí)現(xiàn)自定義tooltip示例代碼
這篇文章主要介紹了Jquery實(shí)現(xiàn)自定義tooltip的方法,需要的朋友可以參考下2014-02-02
原生JS實(shí)現(xiàn)在線問卷調(diào)查投票特效
本文主要分享了原生JS實(shí)現(xiàn)在線問卷調(diào)查投票特效的實(shí)例代碼??芍苯訌?fù)制保存HTML運(yùn)行查看效果。具有一定的參考價值,下面跟著小編一起來看下吧2017-01-01
jquery text(),val(),html()方法區(qū)別總結(jié)
jquery text(),val(),html()方法區(qū)別總結(jié)。需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
jquery 實(shí)現(xiàn)input輸入什么div圖層顯示什么
這篇文章主要介紹jquery實(shí)現(xiàn)input輸入什么div圖層顯示什么的具體過程,需要的朋友可以參考下2014-06-06
jQuery實(shí)現(xiàn)checkbox全選功能完整實(shí)例
這篇文章主要介紹了jQuery實(shí)現(xiàn)checkbox全選功能,結(jié)合完整實(shí)例形式分析了jQuery事件響應(yīng)及頁面元素屬性動態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-07-07
jQuery Ajax Post 回調(diào)函數(shù)不執(zhí)行問題的解決方法
本文是小編給大家?guī)淼膉Query Ajax Post 回調(diào)函數(shù)不執(zhí)行的原因及解決方法,在本文最下面還給大家附加jquery Ajax 不執(zhí)行回調(diào)函數(shù)success的原因,這兩個問題都非常多見,感興趣的朋友一起看下吧2016-08-08

