加载中...

:focus1.6+


概述    focus selector

返回值:jQuery

描述:选择当前获取焦点的元素。

  • V : 1.6jQuery( ":focus" )

如同其他伪类选择器(那些以":"开始)一样,使用:focus时,建议在他们前面加一个标签名称或其他选择;否则,会使用默认的通用选择器("*"),性能是不言而喻的。换句话说,$(':focus')等同为$('*:focus')。如果你正在寻找当前的焦点元素,$( document.activeElement )将检索,而不必查找整个DOM树。

示例

实例

添加一个"focused"的类名给那些有focus方法的元素

css 代码:
  1. .focused {
  2.     background: #abcdef;
  3. }
html 代码:
  1. <div id="content">
  2.     <input tabIndex="1">
  3.     <input tabIndex="2">
  4.     <select tabIndex="3">
  5.         <option>select menu</option>
  6.     </select>
  7.     <div tabIndex="4">
  8.         a div
  9.     </div>
  10. </div>
jQuery 代码:
  1. $( "#content" ).delegate( "*", "focus blur", function( event ) {
  2. var elem = $( this );
  3. setTimeout(function() {
  4. elem.toggleClass( "focused", elem.is( ":focus" ) );
  5. }, 0);
  6. });

实例

给获取焦点的元素添加focused类

  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>focus demo</title>
  6. <style>
  7. .focused {
  8. background: #abcdef;
  9. }
  10. </style>
  11. <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
  12. </head>
  13. <body>
  14. <div id="content">
  15. <input tabIndex="1">
  16. <input tabIndex="2">
  17. <select tabIndex="3">
  18. <option>select menu</option>
  19. </select>
  20. <div tabIndex="4">
  21. a div
  22. </div>
  23. </div>
  24. <script>
  25. $( "#content" ).delegate( "*", "focus blur", function() {
  26. var elem = $( this );
  27. setTimeout(function() {
  28. elem.toggleClass( "focused", elem.is( ":focus" ) );
  29. }, 0 );
  30. });
  31. </script>
  32. </body>
  33. </html>

运行一下


还没有评论.