selectText(areaId) { if (document.selection) { var range = document.body.createTextRange(); range.moveToElementText(document.getElementById(areaId)); range.select(); } else if (window.getSelection) { var range = document.createRange(); range.selectNode(document.getElementById(areaId)); window.getSelection().removeAllRanges(); window.getSelection().addRange(range); } }
/** * ForceBlocks.js * * Released under LGPL License. * Copyright (c) 1999-2017 Ephox Corp. All rights reserved * * License: http://www.tinymce.com/license * Contributing: http://www.tinymce.com/contributing */ c("tinymce.core.ForceBlocks",["ephox.katamari.api.Fun"],function(e){var t=function(e){var t,n,r,i,o,a,c,s,u,l,d,f,m=e.settings,p=e.dom,h=e.selection,g=e.schema,v=g.getBlockElements(),y=h.getStart(),b=e.getBody(),C=-16777215;if(f=m.forced_root_block,y&&1===y.nodeType&&f){for(;y&&y!==b;){if(v[y.nodeName])return;y=y.parentNode}if(t=h.getRng(),t.setStart){n=t.startContainer,r=t.startOffset,i=t.endContainer,o=t.endOffset;try{u=e.getDoc().activeElement===b}catch(x){}}else t.item&&(y=t.item(0),t=e.getDoc().body.createTextRange(),t.moveToElementText(y)),u=t.parentElement().ownerDocument===e.getDoc(),l=t.duplicate(),l.collapse(!0),r=l.move("character",C)*-1,l.collapsed||(l=t.duplicate(),l.collapse(!1),o=l.move("character",C)*-1-r);for(y=b.firstChild,d=b.nodeName.toLowerCase();y;)if((3===y.nodeType||1==y.nodeType&&!v[y.nodeName])&&g.isValidChild(d,f.toLowerCase())){if(3===y.nodeType&&0===y.nodeValue.length){c=y,y=y.nextSibling,p.remove(c);continue}a||(a=p.create(f,e.settings.forced_root_block_attrs),y.parentNode.insertBefore(a,y),s=!0),c=y,y=y.nextSibling,a.appendChild(c)}else a=null,y=y.nextSibling;if(s&&u){if(t.setStart)t.setStart(n,r),t.setEnd(i,o),h.setRng(t);else try{t=e.getDoc().body.createTextRange(),t.moveToElementText(b),t.collapse(!0),t.moveStart("character",r),o>0&&t.moveEnd("character",o),t.select()}catch(x){}e.nodeChanged()}}},n=function(n){n.settings.forced_root_block&&n.on("NodeChange",e.curry(t,n))};return{setup:n}})
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
function y() { var e, t; document.createRange ? (e = document.createRange(), e.selectNodeContents(D), e.collapse(!1), t = window.getSelection(), t.removeAllRanges(), t.addRange(e)) : document.selection && (e = document.body.createTextRange(), e.moveToElementText(D), e.collapse(!1), e.select()) }
function L(){function e(e,t){var n=c.createTextRange();try{n.moveToPoint(e,t)}catch(r){n=null}return n}function t(t){var r;t.button?(r=e(t.x,t.y),r&&(r.compareEndPoints("StartToStart",i)>0?r.setEndPoint("StartToStart",i):r.setEndPoint("EndToEnd",i),r.select())):n()}function n(){var e=a.selection.createRange();i&&!e.item&&0===e.compareEndPoints("StartToEnd",e)&&i.select(),Z.unbind(a,"mouseup",n),Z.unbind(a,"mousemove",t),i=r=0}var r,i,o,a=Z.doc,c=a.body;a.documentElement.unselectable=!0,Z.bind(a,"mousedown contextmenu",function(c){if("HTML"===c.target.nodeName){if(r&&n(),o=a.documentElement,o.scrollHeight>o.clientHeight)return;r=1,i=e(c.x,c.y),i&&(Z.bind(a,"mouseup",n),Z.bind(a,"mousemove",t),Z.getRoot().focus(),i.select())}})}
// 设置光标位置 function setCaretPosition(textDom, pos) { if (textDom.setSelectionRange) { // IE Support textDom.focus(); textDom.setSelectionRange(pos, pos); } else if (textDom.createTextRange) { // Firefox support var range = textDom.createTextRange(); range.collapse(true); range.moveEnd('character', pos); range.moveStart('character', pos); range.select(); } }
//设置光标位置函数 setCaretPosition(pos) { if (this.textareaDom.setSelectionRange) { this.textareaDom.focus(); this.textareaDom.setSelectionRange(pos, pos); } else if (this.textareaDom.createTextRange) { var range = this.textareaDom.createTextRange(); range.collapse(true); range.moveEnd('character', pos); range.moveStart('character', pos); range.select(); } }
/** Select the content of the specified element **/ function DOM_selectAll(containerid) { if (document.selection) { var range = document.body.createTextRange(); range.moveToElementText(document.getElementById(containerid)); range.select(); } else if (window.getSelection) { var range = document.createRange(); range.selectNode(document.getElementById(containerid)); window.getSelection().addRange(range); } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
var rangeToTextRange = function(range) { if (range.collapsed) { return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); } else { var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true); var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false); var textRange = getBody( DomRange.getRangeDocument(range) ).createTextRange(); textRange.setEndPoint("StartToStart", startRange); textRange.setEndPoint("EndToEnd", endRange); return textRange; } }
function y() { var e, t; document.createRange ? (e = document.createRange(), e.selectNodeContents(D), e.collapse(!1), t = window.getSelection(), t.removeAllRanges(), t.addRange(e)) : document.selection && (e = document.body.createTextRange(), e.moveToElementText(D), e.collapse(!1), e.select()) }