OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE HTML> |
| 2 <html> |
| 3 <body> |
| 4 <script src="../../fast/js/resources/js-test-pre.js"></script> |
| 5 |
| 6 <div contentEditable> |
| 7 <p id="before">Before</p> |
| 8 <p id="middle" contentEditable="false">Middle</p> |
| 9 <p id="after">After</p> |
| 10 </div> |
| 11 |
| 12 <div id="console"></div> |
| 13 <script> |
| 14 description("Ensure that extending a selection inside a contentEditable skips pa
st an uneditable region."); |
| 15 |
| 16 var before = document.getElementById("before"); |
| 17 var after = document.getElementById("after"); |
| 18 |
| 19 var sel = window.getSelection(); |
| 20 sel.setBaseAndExtent(before, 0, before, 6); |
| 21 sel.modify("extend", "forward", "character"); |
| 22 shouldBe("sel.focusNode", "after"); |
| 23 |
| 24 sel.setBaseAndExtent(after, 5, after, 0); |
| 25 sel.modify("extend", "backward", "character"); |
| 26 shouldBe("sel.focusNode.parentElement", "before"); |
| 27 |
| 28 sel.setBaseAndExtent(before, 0, before, 6); |
| 29 sel.modify("extend", "forward", "word"); |
| 30 shouldBe("sel.focusNode", "after"); |
| 31 |
| 32 sel.setBaseAndExtent(after, 5, after, 0); |
| 33 sel.modify("extend", "backward", "word"); |
| 34 shouldBe("sel.focusNode.parentElement", "before"); |
| 35 |
| 36 sel.setBaseAndExtent(before, 0, before, 6); |
| 37 sel.modify("extend", "forward", "line"); |
| 38 shouldBe("sel.focusNode.parentElement", "after"); |
| 39 |
| 40 sel.setBaseAndExtent(after, 5, after, 0); |
| 41 sel.modify("extend", "backward", "line"); |
| 42 shouldBe("sel.focusNode.parentElement", "before"); |
| 43 </script> |
| 44 |
| 45 <script src="../../fast/js/resources/js-test-post.js"></script> |
| 46 </body> |
| 47 </html> |
OLD | NEW |