| <!DOCTYPE html> |
| <meta charset=utf-8> |
| <title>HTMLTableCellElement.cellIndex</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id="log"></div> |
| <script> |
| test(function() { |
| var th = document.createElement("th"); |
| assert_true("cellIndex" in th, '"cellIndex" in th'); |
| var td = document.createElement("td"); |
| assert_true("cellIndex" in td, '"cellIndex" in td'); |
| }, "cellIndex should exist.") |
| test(function() { |
| var th = document.createElement("th"); |
| assert_equals(th.cellIndex, -1); |
| var td = document.createElement("td"); |
| assert_equals(td.cellIndex, -1); |
| }, "For cells without a parent, cellIndex should be -1.") |
| test(function() { |
| var table = document.createElement("table"); |
| var th = table.appendChild(document.createElement("th")); |
| assert_equals(th.cellIndex, -1); |
| var td = table.appendChild(document.createElement("td")); |
| assert_equals(td.cellIndex, -1); |
| }, "For cells whose parent is not a tr, cellIndex should be -1.") |
| test(function() { |
| var tr = document.createElementNS("", "tr"); |
| var th = tr.appendChild(document.createElement("th")); |
| assert_equals(th.cellIndex, -1); |
| var td = tr.appendChild(document.createElement("td")); |
| assert_equals(td.cellIndex, -1); |
| }, "For cells whose parent is not a HTML tr, cellIndex should be -1.") |
| test(function() { |
| var tr = document.createElement("tr"); |
| var th = tr.appendChild(document.createElement("th")); |
| assert_equals(th.cellIndex, 0); |
| var td = tr.appendChild(document.createElement("td")); |
| assert_equals(td.cellIndex, 1); |
| }, "For cells whose parent is a tr, cellIndex should be the index.") |
| test(function() { |
| var tr = document.createElement("tr"); |
| var th = tr.appendChild(document.createElement("th")); |
| assert_equals(th.cellIndex, 0); |
| tr.appendChild(document.createElement("div")); |
| tr.appendChild(document.createTextNode("Hello World")); |
| var td = tr.appendChild(document.createElement("td")); |
| assert_equals(td.cellIndex, 1) |
| }, "For cells whose parent is a tr with non td/th sibling, cellIndex should skip those non td/th siblings.") |
| </script> |