| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <script src="../../resources/js-test-pre.js"></script> |
| </head> |
| <body id="body"> |
| |
| <div id="main"> |
| <ul role="tabset"> |
| <li role="tab" aria-selected="true">One</li><li role="tab">Two</li><li role="tab">Three</li> |
| </ul> |
| <div role="tabpanel"> |
| <button id="button">This one does nothing</button> |
| </div> |
| </div> |
| |
| <div role="checkbox">checkbox</div> |
| |
| <p id="description"></p> |
| <div id="console"></div> |
| <div id="notifications"></div> |
| |
| <script> |
| |
| description("This tests that when aria-hidden is toggled, it will clear out the cached children for non-ignored elements that are descendants."); |
| |
| if (window.accessibilityController) { |
| |
| document.getElementById("body").focus(); |
| var body = accessibilityController.focusedElement; |
| |
| // Verify we can access the button inside the tab panel. |
| shouldBe("body.childAtIndex(3).childAtIndex(0).role", "'AXRole: AXButton'"); |
| |
| // Toggle aria-hidden, and we should not be able to access the same elements anymore. |
| document.getElementById("main").setAttribute("aria-hidden", "true"); |
| shouldBe("body.childAtIndex(0).role", "'AXRole: AXCheckBox'"); |
| |
| // Toggle aria-hidden off again and we should again be able to access elements inside the tab panel. |
| document.getElementById("main").setAttribute("aria-hidden", "false"); |
| shouldBe("body.childAtIndex(3).childAtIndex(0).role", "'AXRole: AXButton'"); |
| |
| } |
| |
| </script> |
| |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |