DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> Jquery實現兼容各大浏覽器的Enter回車切換輸入焦點的方法教程
Jquery實現兼容各大浏覽器的Enter回車切換輸入焦點的方法教程
編輯:JQuery特效代碼     

做項目時,客戶要求能夠用enter回車直接切換輸入(焦點),當最後一個時候,直接提交信息。

第一想法就是,網上去copy一段代碼直接用。但了百度、谷歌找了個遍,找到的代碼80%以上都是一樣的。有的代碼太老,都不能用。有的只有部分浏覽器能用。折騰了半小時也沒個合適的辦法。最後一想,干脆自己動手。

一、思路

  每次點擊回車的時候,獲取當前的焦點位置,然後設置它的下一個元素獲取焦點;

二、代碼

<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>

 其中,因為IE和火狐對鍵值獲取的不同,所以對浏覽器做了簡單的判斷區分。這樣就可以在各個浏覽器上獲取敲擊的鍵值。

最後,獲取到當前的值以後,就可以加其它的各種條件了。

演示地址:http://demo.cnblogs.com/js/2014/jsenterqiehuan/

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved