diff options
author | Alex Yatskov <alex@foosoft.net> | 2016-03-16 22:04:56 -0700 |
---|---|---|
committer | Alex Yatskov <alex@foosoft.net> | 2016-03-16 22:04:56 -0700 |
commit | 3fd7ab16ac6f3c97822951eaddd7d9a090cea48a (patch) | |
tree | ef015556afbe726a17ccec07f37b2c347fb74576 /content.js | |
parent | 4c8960dba591beb850ea1b49d02c8771ab705d08 (diff) |
Test code
Diffstat (limited to 'content.js')
-rw-r--r-- | content.js | 30 |
1 files changed, 29 insertions, 1 deletions
@@ -20,4 +20,32 @@ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -document.body.style.background = 'lightyellow'; +function insertBreakAtPoint(e) { + var range; + var textNode; + var offset; + + if (document.caretPositionFromPoint) { + range = document.caretPositionFromPoint(e.clientX, e.clientY); + textNode = range.offsetNode; + offset = range.offset; + } else if (document.caretRangeFromPoint) { + range = document.caretRangeFromPoint(e.clientX, e.clientY); + textNode = range.startContainer; + offset = range.startOffset; + } + + // only split TEXT_NODEs + if (textNode.nodeType == 3) { + var replacement = textNode.splitText(offset); + var br = document.createElement('br'); + textNode.parentNode.insertBefore(br, replacement); + } +} + +function onMouseDown(e) { + insertBreakAtPoint(e); +} + + +window.addEventListener('mousedown', onMouseDown, false); |