Fri, 16 Jan 2015 18:13:44 +0100
Integrate suggestion from review to improve consistency with existing code.
1 <!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en">
2 <html>
3 <head>
4 <title>Table header information cells for ARIA grid</title>
5 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
6 <link rel="stylesheet" type="text/css"
7 href="chrome://mochikit/content/tests/SimpleTest/test.css" />
9 <script type="application/javascript"
10 src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
12 <script type="application/javascript"
13 src="../common.js"></script>
14 <script type="application/javascript"
15 src="../table.js"></script>
17 <script type="application/javascript">
19 function doTest()
20 {
21 //////////////////////////////////////////////////////////////////////////
22 // column and row headers from markup
24 headerInfoMap = [
25 {
26 cell: "table_dc_1",
27 rowHeaderCells: [ "table_rh_1" ],
28 columnHeaderCells: [ "table_ch_2" ]
29 },
30 {
31 cell: "table_dc_2",
32 rowHeaderCells: [ "table_rh_1" ],
33 columnHeaderCells: [ "table_ch_3" ]
34 },
35 {
36 cell: "table_dc_3",
37 rowHeaderCells: [ "table_rh_2" ],
38 columnHeaderCells: [ "table_ch_2" ]
39 },
40 {
41 cell: "table_dc_4",
42 rowHeaderCells: [ "table_rh_2" ],
43 columnHeaderCells: [ "table_ch_3" ]
44 },
45 {
46 cell: "table_rh_1",
47 rowHeaderCells: [],
48 columnHeaderCells: [ "table_ch_1" ]
49 },
50 {
51 cell: "table_rh_2",
52 rowHeaderCells: [],
53 columnHeaderCells: [ "table_ch_1" ]
54 }
55 ];
57 testHeaderCells(headerInfoMap);
60 //////////////////////////////////////////////////////////////////////////
61 // column and row headers from markup for crazy grid.
63 headerInfoMap = [
64 {
65 // not focusable cell (nsARIAGridCellAccessible is used)
66 cell: "table2_dc_1",
67 rowHeaderCells: [],
68 columnHeaderCells: [ "table2_ch_1" ]
69 },
70 {
71 // focusable cell (nsARIAGridCellAccessible is used)
72 cell: "table2_dc_2",
73 rowHeaderCells: [],
74 columnHeaderCells: [ "table2_ch_2" ]
75 }
76 ];
78 testHeaderCells(headerInfoMap);
80 SimpleTest.finish();
81 }
83 SimpleTest.waitForExplicitFinish();
84 addA11yLoadEvent(doTest);
85 </script>
86 </head>
88 <body>
89 <a target="_blank"
90 title="implement IAccessibleTable2"
91 href="https://bugzilla.mozilla.org/show_bug.cgi?id=512424">Mozilla Bug 512424</a>
92 <a target="_blank"
93 title="nsHTMLTableCellAccessible is used in dojo's crazy ARIA grid"
94 href="https://bugzilla.mozilla.org/show_bug.cgi?id=513848">Mozilla Bug 513848</a>
96 <p id="display"></p>
97 <div id="content" style="display: none"></div>
98 <pre id="test">
99 </pre>
101 <div role="grid">
102 <div role="row">
103 <span id="table_ch_1" role="columnheader">col_1</span>
104 <span id="table_ch_2" role="columnheader">col_2</span>
105 <span id="table_ch_3" role="columnheader">col_3</span>
106 </div>
107 <div role="row">
108 <span id="table_rh_1" role="rowheader">row_1</span>
109 <span id="table_dc_1" role="gridcell">cell1</span>
110 <span id="table_dc_2" role="gridcell">cell2</span>
111 </div>
112 <div role="row">
113 <span id="table_rh_2" role="rowheader">row_2</span>
114 <span id="table_dc_3" role="gridcell">cell3</span>
115 <span id="table_dc_4" role="gridcell">cell4</span>
116 </div>
117 </div>
119 <div role="grid">
120 <div role="row">
121 <table role="presentation">
122 <tr>
123 <td id="table2_ch_1" role="columnheader">header1</td>
124 <td id="table2_ch_2" role="columnheader">header2</td>
125 </tr>
126 </table>
127 </div>
128 <div role="row">
129 <table role="presentation">
130 <tr>
131 <td id="table2_dc_1" role="gridcell">cell1</td>
132 <td id="table2_dc_2" role="gridcell" tabindex="-1">cell2</td>
133 </tr>
134 </table>
135 </div>
136 </div>
138 </body>
139 </html>