2013-07-25 147 views
2

我有一個表單,其中一些可能被隱藏。爲了正確無障礙我添加的tabIndex使用jQuery,只有那些當前可見的元素:將tabindex添加到動態元素

$(':input:visible').each(function (i) { 
    $(this).attr('tabindex', i + 1); 
}); 

它的偉大工程。但是,當我決定將tabindex添加到具有特定類名稱的跨度中時,該元素將被跳過。爲什麼?

$(':input:visible, .tabIn').each(function (i) { 
    $(this).attr('tabindex', i + 1); 
}); 

<span class="tabIn">my span</span> 
+0

被跳過?它根本就沒有得到tabindex? – putvande

+0

在HTML5中,每個標籤都可以有tabindex。 – putvande

+0

是的,沒有tabindex被添加。但是,如果我手動添加它,Tab鍵效果很好。在我的jQuery函數中是否有語法錯誤?..沒有意義 – santa

回答

0

這個作品糾正我:

<html> 
    <head> 
     <script type="text/javascript" src="jquery.min.js"></script> 
     <script type="text/javascript"> 
     $(document).ready(function() { 
      $(':input:visible, .tabIn').each(function (i) { 
       $(this).css('background-color','red').attr('tabindex', i + 1); 
      }); 
     }); 
     </script> 
    </head> 
    <body> 
    <span class="tabIn">my span</span> 

    <input name="tabIn" /> 
    </body> 
</html>