| <!DOCTYPE html> |
| <div id="target" style=" |
| outline: dashed lightblue; |
| width: 150px; |
| padding: 25px; |
| font: 20px ahem; |
| -webkit-writing-mode: horizontal-bt; |
| ">Lorem ipsum dolor sit amet</div> |
| <pre id="log"></pre> |
| <script> |
| if (window.testRunner && window.internals) { |
| testRunner.dumpAsText(); |
| internals.settings.setEditingBehavior("mac"); |
| } |
| |
| function log(message) |
| { |
| document.getElementById("log").appendChild(document.createTextNode(message + "\n")); |
| } |
| |
| function test(x, y, expectedOffset) |
| { |
| var actualOffset = document.caretRangeFromPoint(8 + x, 8 + y).startOffset; |
| if (actualOffset === expectedOffset) |
| log("PASS: offset at (" + x + "," + y + ") was " + actualOffset + "."); |
| else |
| log("FAIL: offset at (" + x + "," + y + ") was " + actualOffset + ". Expected " + expectedOffset + "."); |
| } |
| |
| test(100, 105, 4); |
| test(160, 105, 5); |
| test(100, 104, 10); |
| test(160, 104, 11); |
| test(60, 26, 24); |
| test(160, 26, 26); |
| test(60, 25, 24); |
| test(160, 25, 26); |
| test(60, 24, 26); |
| test(160, 24, 26); |
| </script> |