| <!DOCTYPE html> |
| <meta charset="utf-8"> |
| <title>accesskey focus element</title> |
| <link rel="help" href="https://html.spec.whatwg.org/multipage/interaction.html#the-accesskey-attribute"> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| |
| <div id="focusableDiv" tabindex="0" accesskey="a"></div> |
| <div id="nonFocusableDiv" accesskey="b"></div> |
| <input id="input" accesskey="c"</input> |
| <select id="select" accesskey="d"></select> |
| <a id="link" href="#" accesskey="e"></a> |
| |
| <script> |
| |
| function pressAccessKey(key) |
| { |
| if (navigator.userAgent.search(/\bMac OS X\b/) != -1) |
| modifiers = ["ctrlKey", "altKey"]; |
| else |
| modifiers = ["altKey"]; |
| eventSender.keyDown(key, modifiers); |
| } |
| |
| test(() => { |
| pressAccessKey("a"); |
| assert_equals(document.activeElement, focusableDiv); |
| }, "DIV element with tabindex can be focused via accesskey"); |
| test(() => { |
| pressAccessKey("b"); |
| assert_equals(document.activeElement, focusableDiv); |
| }, "DIV element without tabindex can NOT be focused via accesskey"); |
| test(() => { |
| pressAccessKey("c"); |
| assert_equals(document.activeElement, input); |
| }, "INPUT element can be focused via accesskey"); |
| test(() => { |
| pressAccessKey("d"); |
| assert_equals(document.activeElement, select); |
| }, "SELECT element can be focused via accesskey"); |
| test(() => { |
| pressAccessKey("e"); |
| assert_equals(document.activeElement, link); |
| }, "A element can be focused via accesskey"); |
| |
| </script> |