IP Library Granted Patent US 8,819,192
Granted Patent B2
US 8,819,192 · App. 13/293,530 · Granted Aug 26, 2014

Identifying keyboard inaccessible node on web page

Inventors: Jie Hu (Shanghai, CN); Yang Liu (Shanghai, CN); Ling Luo (Shanghai, CN)
Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,819,192
App. No.
13/293,530
Granted
Aug 26, 2014
Kind
B2
Abstract

A method and apparatus for identifying a keyboard inaccessible node on a web page. The method may include acquiring all nodes in a DOM tree of the web page; identifying a mouse operable node among all the nodes; checking whether or not said mouse operable node is keyboard navigable and whether or not said mouse operable node is keyboard operable; and extracting the keyboard non-navigable node and the keyboard inoperable node as said keyboard inaccessible node.

Claims (43)

1. A method of identifying a keyboard inaccessible node on a web page, comprising:

acquiring all nodes in a document object model (DOM) tree of the web page;

identifying a mouse operable node among all the nodes, identifying a mouse operable node among all the nodes comprising:

simulating a mouse event on each node among all the nodes;

checking if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable; and

extracting a number of keyboard non-navigable nodes and number of keyboard inoperable nodes as keyboard inaccessible nodes.

2. The method according to claim 1 , in which identifying a mouse operable node among all the nodes further comprises:

determining if the web page state changes; and

identifying a node for which the web page state changes as the mouse operable node.

3. The method according to claim 1 , in which checking if said mouse operable node is keyboard operable further comprises:

simulating a keyboard event on the mouse operable node;

determining if the web page state changes; and

identifying a node for which the web page state does not change as one of the number of keyboard inoperable nodes.

4. The method according to claim 1 , further comprising:

labeling the number of keyboard non-navigable nodes as “keyboard non navigable”, and labeling the number of keyboard inoperable nodes as “keyboard inoperable”.

5. The method according to claim 2 , in which the changes of said web page state comprises changes of the DOM tree, request sending, opening of a new browser window, or combinations thereof.

6. The method according to claim 3 , in which the changes of said web page state comprises changes of the DOM tree, request sending, opening of a new browser window, or combinations thereof.

7. The method according to claim 1 , in which the step of checking if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable further comprises first checking if it is keyboard navigable.

8. The method according to claim 1 , in which the step of checking if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable further comprises first checking if it is keyboard operable.

9. The method according to claim 1 , in which said all nodes comprise any one of text input, buttons, links, paragraphs, text information and labels, and said mouse operable node comprises any one of text input, buttons and links.

10. An apparatus for identifying a keyboard inaccessible node on a web page, comprising:

an acquiring unit to acquire all nodes in a document object model (DOM) tree of the web page;

a first identification unit to identify a mouse operable node among all the nodes, in which the first identification unit identifies a mouse operable node among all the nodes by simulating a mouse event on each node among all the nodes;

a second identification unit to check if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable; and

a determination unit to determine whether the mouse operable node is a keyboard non-navigable node and determine whether the mouse operable node is a keyboard inoperable node, and if so, extract the keyboard non-navigable node and keyboard inoperable node as said keyboard inaccessible node.

11. The apparatus according to claim 10 , in which the first identification unit, after simulating a mouse event on each node among all the nodes, further identifies a node for which the web page state changes in the mouse event as the mouse operable node.

12. The apparatus according to claim 10 , in which the second identification unit simulates a keyboard event on said mouse operable node and identifies a node for which the web page state does not change in the keyboard event as one of the number of keyboard inoperable nodes.

13. The apparatus according to claim 10 , in which the second identification unit labels the number of keyboard non-navigable nodes as “keyboard non-navigable” and labels the number of keyboard inoperable nodes as “keyboard inoperable”.

14. The apparatus according to claim 11 , in which the changes of said web page state comprises a change of the DOM tree, request sending, opening of a new browser window, or combinations thereof.

15. The apparatus according to claim 12 , in which the changes of said web page state comprises a change of the DOM tree, request sending, opening of a new browser window, or combinations thereof.

16. The apparatus according to claim 10 , in which the second identification unit first checks if it is keyboard navigable.

17. The apparatus according to claim 10 , in which the second identification unit first checks if it is keyboard operable.

18. The apparatus according to claim 10 , in which said all nodes comprise any one of text input, buttons, links, paragraphs, text information and labels, and said mouse operable node comprises any one of text input, buttons and links.

19. A method of identifying a keyboard inaccessible node on a web page, comprising:

detecting a number of nodes within a document object model (DOM tree of the web page;

identifying a mouse operable node among the detected nodes by simulating a mouse event on each of said number of nodes within the DOM tree and determining whether the web page state has changed upon operation of the simulation;

determining if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable; and

defining keyboard non-navigable nodes and keyboard inoperable nodes as said keyboard inaccessible node.

20. A method of identifying a keyboard inaccessible node on a web page, comprising:

detecting a number of nodes within a document object model (DOM) tree of the web page;

identifying a mouse operable node among the detected nodes;

determining if said mouse operable node is keyboard navigable and if said mouse operable node is keyboard operable by simulating a keyboard event on each of a number of mouse operable nodes within the DOM tree and determining whether the web page state has changed upon operation of the simulation; and

defining keyboard non-navigable nodes and keyboard inoperable nodes as said keyboard inaccessible node.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2022
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: ACCESSIBE LIMITED
Reel/Frame 059533/0435 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2011
From: HU, JIE; LIU, YANG; LUO, LING
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 027208/0053 →
Priority Claims (1)
CN 2010 1 0565471 · Nov 30, 2010 · national
Continuity (1)
Related Publication 20120136974A1 · May 31, 2012