Custom interactive element identification
AssigneeBrowserStack Limited
InventorsSajal Garg, Jimesh Mayank Chokshi
Life of this patent
Estimating the term…
Abstract
An accessibility test engine can receive the document object model of a webpage and analyze the webpage for compliance with a set of accessibility rules. The test engine analyzes the compliance of a webpage element with accessibility rules in part by identifying the type of element. The test engine can include a module for detecting custom interactive elements on a webpage. When several elements in a family tree of an element are custom interactive elements, a representative custom interactive element is selected and used for accessibility testing.
Claims20
A method of improving accessibility compliance of a webpage, the method comprising:
- receiving a nested user interface element from the document object model (DOM) of a webpage;
- determining whether the element contains a number of framework event listeners above a selected threshold, wherein framework event listeners comprise event listeners provided by standard libraries of a programming language used to code the webpage, wherein a large number of event listeners above the selected threshold indicates the element is not a custom interactive element;
- determining whether the element comprises indicia of custom interactivity, the indicia of custom interactivity comprising the element having an event listener with an event-listener follow-up logic, wherein the follow-up logic responds to the event listener detecting an event, and the element further comprises a user interface event listener and a user interface modification follow-up logic in response to the user interface event listener, wherein the modification follow-up logic when executed by a browser rendering the webpage performs an action in the user interface element;
- determining whether the element is focusable, wherein focusability corresponds to when an interpreter of the browser renders the element, the element responds to keyboard key combinations by visually distinguishing the element;
- testing compliance of the element with a set of rules, with a test engine;
- generating an accessibility compliance report, based on the testing;
- modifying accessibility compliance of the webpage, based at least in part on the accessibility compliance report;
- and
- the interpreter of the browser, rendering the webpage with modified accessibility compliance, increasing screen reader compatibility of the webpage.
A non-transitory computer storage medium that stores executable program instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations directed to improving accessibility compliance of a webpage, the operations comprising:
- receiving a nested user interface element from the document object model (DOM) of a webpage;
- determining whether the element contains a number of framework event listeners above a selected threshold, wherein framework event listeners comprise event listeners provided by standard libraries of a programming language used to code the webpage, wherein a large number of event listeners above the selected threshold indicates the element is not a custom interactive element;
- determining whether the element comprises indicia of custom interactivity, the indicia of custom interactivity comprising the element having an event listener with an event-listener follow-up logic, wherein the follow-up logic responds to the event listener detecting an event, and the element further comprises a user interface event listener and a user interface modification follow-up logic in response to the user interface event listener, wherein the modification follow-up logic when executed by a browser rendering the webpage performs an action in the user interface element;
- determining whether the element is focusable, wherein focusability corresponds to when an interpreter of the browser renders the element, the element responds to keyboard key combinations by visually distinguishing the element;
- testing compliance of the element with a set of rules, with a test engine;
- generating an accessibility compliance report, based on the testing;
- modifying accessibility compliance of the webpage, based at least in part on the accessibility compliance report;
- and
- the interpreter of the browser, rendering the webpage with modified accessibility compliance, increasing screen reader compatibility of the webpage.
A system comprising one or more processors, wherein the one or more processors are configured to perform operations, directed to improving accessibility compliance of a webpage, the operations comprising:
- receiving a nested user interface element from the document object model (DOM) of a webpage;
- determining whether the element contains a number of framework event listeners above a selected threshold, wherein framework event listeners comprise event listeners provided by standard libraries of a programming language used to code the webpage, wherein a large number of event listeners above the selected threshold indicates the element is not a custom interactive element;
- determining whether the element comprises indicia of custom interactivity, the indicia of custom interactivity comprising the element having an event listener with an event-listener follow-up logic, wherein the follow-up logic responds to the event listener detecting an event, and the element further comprises a user interface event listener and a user interface modification follow-up logic in response to the user interface event listener, wherein the modification follow-up logic when executed by a browser rendering the webpage performs an action in the user interface element;
- determining whether the element is focusable, wherein focusability corresponds to when an interpreter of the browser renders the element, the element responds to keyboard key combinations by visually distinguishing the element;
- testing compliance of the element with a set of rules, with a test engine;
- generating an accessibility compliance report, based on the testing;
- modifying accessibility compliance of the webpage, based at least in part on the accessibility compliance report;
- and
- the interpreter of the browser, rendering the webpage with modified accessibility compliance, increasing screen reader compatibility of the webpage.
Dependencies are inferred from the claim text.