/*! * UEditor * version: ueditor * build: Wed Aug 10 2016 11:06:16 GMT+0800 (CST) */ !function(){var getAuthorization=function(){const currentUser=sessionStorage.getItem("currentUser");if(!currentUser)throw"未获取到登录信息,请重新登录!";return"Bearer "+JSON.parse(currentUser).token},handlerPreviewFile=function(fileId){var a=$("ferry").get(0),e=document.createEvent("MouseEvents");e.initEvent("click",!0,!0),a.dispatchEvent(e)};UEDITOR_CONFIG=window.UEDITOR_CONFIG||{};var baidu=window.baidu||{};window.baidu=baidu,window.UE=baidu.editor=window.UE||{},UE.plugins={},UE.commands={},UE.instants={},UE.I18N={},UE._customizeUI={},UE.version="1.4.3";var dom=UE.dom={},browser=UE.browser=function(){var agent=navigator.userAgent.toLowerCase(),opera=window.opera,browser={ie:/(msie\s|trident.*rv:)([\w.]+)/.test(agent),opera:!!opera&&opera.version,webkit:agent.indexOf(" applewebkit/")>-1,mac:agent.indexOf("macintosh")>-1,quirks:"BackCompat"==document.compatMode};browser.gecko="Gecko"==navigator.product&&!browser.webkit&&!browser.opera&&!browser.ie;var version=0;if(browser.ie){var v1=agent.match(/(?:msie\s([\w.]+))/),v2=agent.match(/(?:trident.*rv:([\w.]+))/);version=v1&&v2&&v1[1]&&v2[1]?Math.max(1*v1[1],1*v2[1]):v1&&v1[1]?1*v1[1]:v2&&v2[1]?1*v2[1]:0,browser.ie11Compat=11==document.documentMode,browser.ie9Compat=9==document.documentMode,browser.ie8=!!document.documentMode,browser.ie8Compat=8==document.documentMode,browser.ie7Compat=7==version&&!document.documentMode||7==document.documentMode,browser.ie6Compat=version<7||browser.quirks,browser.ie9above=version>8,browser.ie9below=version<9,browser.ie11above=version>10,browser.ie11below=version<11}if(browser.gecko){var geckoRelease=agent.match(/rv:([\d\.]+)/);geckoRelease&&(version=1e4*(geckoRelease=geckoRelease[1].split("."))[0]+100*(geckoRelease[1]||0)+1*(geckoRelease[2]||0))}return/chrome\/(\d+\.\d)/i.test(agent)&&(browser.chrome=+RegExp.$1),/(\d+\.\d)?(?:\.\d)?\s+safari\/?(\d+\.\d+)?/i.test(agent)&&!/chrome/i.test(agent)&&(browser.safari=+(RegExp.$1||RegExp.$2)),browser.opera&&(version=parseFloat(opera.version())),browser.webkit&&(version=parseFloat(agent.match(/ applewebkit\/(\d+)/)[1])),browser.version=version,browser.isCompatible=!browser.mobile&&(browser.ie&&version>=6||browser.gecko&&version>=10801||browser.opera&&version>=9.5||browser.air&&version>=1||browser.webkit&&version>=522||!1),browser}(),ie=browser.ie,webkit=browser.webkit,gecko=browser.gecko,opera=browser.opera,utils=UE.utils={each:function(obj,iterator,context){if(null!=obj)if(obj.length===+obj.length){for(var i=0,l=obj.length;i=start&&v===item)return index=i,!1})),index},removeItem:function(array,item){for(var i=0,l=array.length;i'](?:(amp|lt|quot|gt|#39|nbsp|#\d+);)?/g,(function(a,b){return b?a:{"<":"<","&":"&",'"':""",">":">","'":"'"}[a]})):""},unhtmlForUrl:function(str,reg){return str?str.replace(reg||/[<">']/g,(function(a){return{"<":"<","&":"&",'"':""",">":">","'":"'"}[a]})):""},html:function(str){return str?str.replace(/&((g|l|quo)t|amp|#39|nbsp);/g,(function(m){return{"<":"<","&":"&",""":'"',">":">","'":"'"," ":" "}[m]})):""},cssStyleToDomStyle:(test=document.createElement("div").style,cache={float:null!=test.cssFloat?"cssFloat":null!=test.styleFloat?"styleFloat":"float"},function(cssName){return cache[cssName]||(cache[cssName]=cssName.toLowerCase().replace(/-./g,(function(match){return match.charAt(1).toUpperCase()})))}),loadFile:function(){var tmpList=[];function getItem(doc,obj){try{for(var i=0,ci;ci=tmpList[i++];)if(ci.doc===doc&&ci.url==(obj.src||obj.href))return ci}catch(e){return null}}return function(doc,obj,fn){var item=getItem(doc,obj);if(item)item.ready?fn&&fn():item.funs.push(fn);else if(tmpList.push({doc:doc,url:obj.src||obj.href,funs:[fn]}),doc.body){if(!obj.id||!doc.getElementById(obj.id)){var element=doc.createElement(obj.tag);for(var p in delete obj.tag,obj)element.setAttribute(p,obj[p]);element.onload=element.onreadystatechange=function(){if(!this.readyState||/loaded|complete/.test(this.readyState)){if((item=getItem(doc,obj)).funs.length>0){item.ready=1;for(var fi;fi=item.funs.pop();)fi()}element.onload=element.onreadystatechange=null}},element.onerror=function(){throw Error("The load "+(obj.href||obj.src)+" fails,check the url settings of file ueditor.config.js ")},doc.getElementsByTagName("head")[0].appendChild(element)}}else{var html=[];for(var p in obj)"tag"!=p&&html.push(p+'="'+obj[p]+'"');doc.write("<"+obj.tag+" "+html.join(" ")+" >")}}}(),isEmptyObject:function(obj){if(null==obj)return!0;if(this.isArray(obj)||this.isString(obj))return 0===obj.length;for(var key in obj)if(obj.hasOwnProperty(key))return!1;return!0},fixColor:function(name,value){if(/color/i.test(name)&&/rgba?/.test(value)){var array=value.split(",");if(array.length>3)return"";value="#";for(var i=0,color;color=array[i++];)value+=1==(color=parseInt(color.replace(/[^\d]/gi,""),10).toString(16)).length?"0"+color:color;value=value.toUpperCase()}return value},optCss:function(val){var padding,margin,border;function opt(obj,name){if(!obj)return"";var t=obj.top,b=obj.bottom,l=obj.left,r=obj.right,val="";if(t&&l&&b&&r)val+=";"+name+":"+(t==b&&b==l&&l==r?t:t==b&&l==r?t+" "+l:l==r?t+" "+l+" "+b:t+" "+r+" "+b+" "+l)+";";else for(var p in obj)val+=";"+name+"-"+p+":"+obj[p]+";";return val}return val=val.replace(/(padding|margin|border)\-([^:]+):([^;]+);?/gi,(function(str,key,name,val){if(1==val.split(" ").length)switch(key){case"padding":return!padding&&(padding={}),padding[name]=val,"";case"margin":return!margin&&(margin={}),margin[name]=val,"";case"border":return"initial"==val?"":str}return str})),(val+=opt(padding,"padding")+opt(margin,"margin")).replace(/^[ \n\r\t;]*|[ \n\r\t]*$/,"").replace(/;([ \n\r\t]+)|\1;/g,";").replace(/(&((l|g)t|quot|#39))?;{2,}/g,(function(a,b){return b?b+";;":";"}))},clone:function(source,target){var tmp;for(var i in target=target||{},source)source.hasOwnProperty(i)&&("object"==typeof(tmp=source[i])?(target[i]=utils.isArray(tmp)?[]:{},utils.clone(source[i],target[i])):target[i]=tmp);return target},transUnitToPx:function(val){if(!/(pt|cm)/.test(val))return val;var unit;switch(val.replace(/([\d.]+)(\w+)/,(function(str,v,u){val=v,unit=u})),unit){case"cm":val=25*parseFloat(val);break;case"pt":val=Math.round(96*parseFloat(val)/72)}return val+(val?"px":"")},domReady:function(){var fnArr=[];function doReady(doc){doc.isReady=!0;for(var ci;ci=fnArr.pop();ci());}return function(onready,win){var doc=(win=win||window).document;onready&&fnArr.push(onready),"complete"===doc.readyState?doReady(doc):(doc.isReady&&doReady(doc),browser.ie&&11!=browser.version?(!function(){if(!doc.isReady){try{doc.documentElement.doScroll("left")}catch(error){return void setTimeout(arguments.callee,0)}doReady(doc)}}(),win.attachEvent("onload",(function(){doReady(doc)}))):(doc.addEventListener("DOMContentLoaded",(function(){doc.removeEventListener("DOMContentLoaded",arguments.callee,!1),doReady(doc)}),!1),win.addEventListener("load",(function(){doReady(doc)}),!1)))}}(),cssRule:browser.ie&&11!=browser.version?function(key,style,doc){var indexList,index;return void 0===style||style&&style.nodeType&&9==style.nodeType?void 0!==(index=(indexList=(doc=style&&style.nodeType&&9==style.nodeType?style:doc||document).indexList||(doc.indexList={}))[key])?doc.styleSheets[index].cssText:void 0:(index=(indexList=(doc=doc||document).indexList||(doc.indexList={}))[key],""===style?void 0!==index&&(doc.styleSheets[index].cssText="",delete indexList[key],!0):(void 0!==index?sheetStyle=doc.styleSheets[index]:(sheetStyle=doc.createStyleSheet("",index=doc.styleSheets.length),indexList[key]=index),void(sheetStyle.cssText=style)))}:function(key,style,doc){var head,node;return void 0===style||style&&style.nodeType&&9==style.nodeType?(node=(doc=style&&style.nodeType&&9==style.nodeType?style:doc||document).getElementById(key))?node.innerHTML:void 0:(node=(doc=doc||document).getElementById(key),""===style?!!node&&(node.parentNode.removeChild(node),!0):void(node?node.innerHTML=style:((node=doc.createElement("style")).id=key,node.innerHTML=style,doc.getElementsByTagName("head")[0].appendChild(node))))},sort:function(array,compareFn){compareFn=compareFn||function(item1,item2){return item1.localeCompare(item2)};for(var i=0,len=array.length;i0){var t=array[i];array[i]=array[j],array[j]=t}return array},serializeParam:function(json){var strArr=[];for(var i in json)if("method"!=i&&"timeout"!=i&&"async"!=i)if("function"!=(typeof json[i]).toLowerCase()&&"object"!=(typeof json[i]).toLowerCase())strArr.push(encodeURIComponent(i)+"="+encodeURIComponent(json[i]));else if(utils.isArray(json[i]))for(var j=0;j1||parent!==node.parentNode){node.style.cssText=parent.style.cssText+";"+node.style.cssText,parent=parent.parentNode;continue}parent.style.cssText+=";"+node.style.cssText,"A"==parent.tagName&&(parent.style.textDecoration="underline")}if("A"!=parent.tagName){parent===node.parentNode&&domUtils.remove(node,!0);break}}parent=parent.parentNode}},mergeSibling:function(node,ignorePre,ignoreNext){function merge(rtl,start,node){var next;if((next=node[rtl])&&!domUtils.isBookmarkNode(next)&&1==next.nodeType&&domUtils.isSameElement(node,next)){for(;next.firstChild;)"firstChild"==start?node.insertBefore(next.lastChild,node.firstChild):node.appendChild(next.firstChild);domUtils.remove(next)}}!ignorePre&&merge("previousSibling","firstChild",node),!ignoreNext&&merge("nextSibling","lastChild",node)},unSelectable:ie&&browser.ie9below||browser.opera?function(node){node.onselectstart=function(){return!1},node.onclick=node.onkeyup=node.onkeydown=function(){return!1},node.unselectable="on",node.setAttribute("unselectable","on");for(var i=0,ci;ci=node.all[i++];)switch(ci.tagName.toLowerCase()){case"iframe":case"textarea":case"input":case"select":break;default:ci.unselectable="on",node.setAttribute("unselectable","on")}}:function(node){node.style.MozUserSelect=node.style.webkitUserSelect=node.style.msUserSelect=node.style.KhtmlUserSelect="none"},removeAttributes:function(node,attrNames){attrNames=utils.isArray(attrNames)?attrNames:utils.trim(attrNames).replace(/[ ]{2,}/g," ").split(" ");for(var i=0,ci;ci=attrNames[i++];){switch(ci=attrFix[ci]||ci){case"className":node[ci]="";break;case"style":node.style.cssText="";var val=node.getAttributeNode("style");!browser.ie&&val&&node.removeAttributeNode(val)}node.removeAttribute(ci)}},createElement:function(doc,tag,attrs){return domUtils.setAttributes(doc.createElement(tag),attrs)},setAttributes:function(node,attrs){for(var attr in attrs)if(attrs.hasOwnProperty(attr)){var value=attrs[attr];switch(attr){case"class":node.className=value;break;case"style":node.style.cssText=node.style.cssText+";"+value;break;case"innerHTML":node[attr]=value;break;case"value":node.value=value;break;default:node.setAttribute(attrFix[attr]||attr,value)}}return node},getComputedStyle:function(element,styleName){var pros;if("width height top left".indexOf(styleName)>-1)return element["offset"+styleName.replace(/^\w/,(function(s){return s.toUpperCase()}))]+"px";if(3==element.nodeType&&(element=element.parentNode),browser.ie&&browser.version<9&&"font-size"==styleName&&!element.style.fontSize&&!dtd.$empty[element.tagName]&&!dtd.$nonChild[element.tagName]){var span=element.ownerDocument.createElement("span");span.style.cssText="padding:0;border:0;font-family:simsun;",span.innerHTML=".",element.appendChild(span);var result=span.offsetHeight;return element.removeChild(span),span=null,result+"px"}try{var value=domUtils.getStyle(element,styleName)||(window.getComputedStyle?domUtils.getWindow(element).getComputedStyle(element,"").getPropertyValue(styleName):(element.currentStyle||element.style)[utils.cssStyleToDomStyle(styleName)])}catch(e){return""}return utils.transUnitToPx(utils.fixColor(styleName,value))},removeClasses:function(elm,classNames){classNames=utils.isArray(classNames)?classNames:utils.trim(classNames).replace(/[ ]{2,}/g," ").split(" ");for(var i=0,ci,cls=elm.className;ci=classNames[i++];)cls=cls.replace(new RegExp("\\b"+ci+"\\b"),"");(cls=utils.trim(cls).replace(/[ ]{2,}/g," "))?elm.className=cls:domUtils.removeAttributes(elm,["class"])},addClass:function(elm,classNames){if(elm){classNames=utils.trim(classNames).replace(/[ ]{2,}/g," ").split(" ");for(var i=0,ci,cls=elm.className;ci=classNames[i++];)new RegExp("\\b"+ci+"\\b").test(cls)||(cls+=" "+ci);elm.className=utils.trim(cls)}},hasClass:function(element,className){if(utils.isRegExp(className))return className.test(element.className);className=utils.trim(className).replace(/[ ]{2,}/g," ").split(" ");for(var i=0,ci,cls=element.className;ci=className[i++];)if(!new RegExp("\\b"+ci+"\\b","i").test(cls))return!1;return i-1==className.length},preventDefault:function(evt){evt.preventDefault?evt.preventDefault():evt.returnValue=!1},removeStyle:function(element,name){browser.ie?("color"==name&&(name="(^|;)"+name),element.style.cssText=element.style.cssText.replace(new RegExp(name+"[^:]*:[^;]+;?","ig"),"")):element.style.removeProperty?element.style.removeProperty(name):element.style.removeAttribute(utils.cssStyleToDomStyle(name)),element.style.cssText||domUtils.removeAttributes(element,["style"])},getStyle:function(element,name){var value=element.style[utils.cssStyleToDomStyle(name)];return utils.fixColor(name,value)},setStyle:function(element,name,value){element.style[utils.cssStyleToDomStyle(name)]=value,utils.trim(element.style.cssText)||this.removeAttributes(element,"style")},setStyles:function(element,styles){for(var name in styles)styles.hasOwnProperty(name)&&domUtils.setStyle(element,name,styles[name])},removeDirtyAttr:function(node){for(var i=0,ci,nodes=node.getElementsByTagName("*");ci=nodes[i++];)ci.removeAttribute("_moz_dirty");node.removeAttribute("_moz_dirty")},getChildCount:function(node,fn){var count=0,first=node.firstChild;for(fn=fn||function(){return 1};first;)fn(first)&&count++,first=first.nextSibling;return count},isEmptyNode:function(node){return!node.firstChild||0==domUtils.getChildCount(node,(function(node){return!domUtils.isBr(node)&&!domUtils.isBookmarkNode(node)&&!domUtils.isWhitespace(node)}))},clearSelectedArr:function(nodes){for(var node;node=nodes.pop();)domUtils.removeAttributes(node,["class"])},scrollToView:function(node,win,offsetTop){var getViewPaneSize,getScrollPosition=function(win){if("pageXOffset"in win)return{x:win.pageXOffset||0,y:win.pageYOffset||0};var doc=win.document;return{x:doc.documentElement.scrollLeft||doc.body.scrollLeft||0,y:doc.documentElement.scrollTop||doc.body.scrollTop||0}},winHeight=function(){var doc=win.document,mode="CSS1Compat"==doc.compatMode;return{width:(mode?doc.documentElement.clientWidth:doc.body.clientWidth)||0,height:(mode?doc.documentElement.clientHeight:doc.body.clientHeight)||0}}().height,offset=-1*winHeight+offsetTop,elementPosition;offset+=node.offsetHeight||0,offset+=domUtils.getXY(node).y;var currentScroll=getScrollPosition(win).y;(offset>currentScroll||offset0)return 0;for(var n in dtd.$isNotEmpty)if(node.getElementsByTagName(n).length)return 0;return 1},setViewportOffset:function(element,offset){var left=0|parseInt(element.style.left),top=0|parseInt(element.style.top),rect=element.getBoundingClientRect(),offsetLeft=offset.left-rect.left,offsetTop=offset.top-rect.top;offsetLeft&&(element.style.left=left+offsetLeft+"px"),offsetTop&&(element.style.top=top+offsetTop+"px")},fillNode:function(doc,node){var tmpNode=browser.ie?doc.createTextNode(domUtils.fillChar):doc.createElement("br");node.innerHTML="",node.appendChild(tmpNode)},moveChild:function(src,tag,dir){for(;src.firstChild;)dir&&tag.firstChild?tag.insertBefore(src.lastChild,tag.firstChild):tag.appendChild(src.firstChild)},hasNoAttributes:function(node){return browser.ie?/^<\w+\s*?>/.test(node.outerHTML):0==node.attributes.length},isCustomeNode:function(node){return 1==node.nodeType&&node.getAttribute("_ue_custom_node_")},isTagNode:function(node,tagNames){return 1==node.nodeType&&new RegExp("\\b"+node.tagName+"\\b","i").test(tagNames)},filterNodeList:function(nodelist,filter,forAll){var results=[];if(!utils.isFunction(filter)){var str=filter;filter=function(n){return-1!=utils.indexOf(utils.isArray(str)?str:str.split(" "),n.tagName.toLowerCase())}}return utils.each(nodelist,(function(n){filter(n)&&results.push(n)})),0==results.length?null:1!=results.length&&forAll?results:results[0]},isInNodeEndBoundary:function(rng,node){var start=rng.startContainer;if(3==start.nodeType&&rng.startOffset!=start.nodeValue.length)return 0;if(1==start.nodeType&&rng.startOffset!=start.childNodes.length)return 0;for(;start!==node;){if(start.nextSibling)return 0;start=start.parentNode}return 1},isBoundaryNode:function(node,dir){for(var tmp;!domUtils.isBody(node);)if((tmp=node)!==(node=node.parentNode)[dir])return!1;return!0},fillHtml:browser.ie11below?" ":"
"},fillCharReg=new RegExp(domUtils.fillChar,"g");!function(){var guid=0,fillChar=domUtils.fillChar,fillData;function updateCollapse(range){range.collapsed=range.startContainer&&range.endContainer&&range.startContainer===range.endContainer&&range.startOffset==range.endOffset}function selectOneNode(rng){return!rng.collapsed&&1==rng.startContainer.nodeType&&rng.startContainer===rng.endContainer&&rng.endOffset-rng.startOffset==1}function setEndPoint(toStart,node,offset,range){return 1==node.nodeType&&(dtd.$empty[node.tagName]||dtd.$nonChild[node.tagName])&&(offset=domUtils.getNodeIndex(node)+(toStart?0:1),node=node.parentNode),toStart?(range.startContainer=node,range.startOffset=offset,range.endContainer||range.collapse(!0)):(range.endContainer=node,range.endOffset=offset,range.startContainer||range.collapse(!1)),updateCollapse(range),range}function execContentsAction(range,action){var start=range.startContainer,end=range.endContainer,startOffset=range.startOffset,endOffset=range.endOffset,doc=range.document,frag=doc.createDocumentFragment(),tmpStart,tmpEnd;if(1==start.nodeType&&(start=start.childNodes[startOffset]||(tmpStart=start.appendChild(doc.createTextNode("")))),1==end.nodeType&&(end=end.childNodes[endOffset]||(tmpEnd=end.appendChild(doc.createTextNode("")))),start===end&&3==start.nodeType)return frag.appendChild(doc.createTextNode(start.substringData(startOffset,endOffset-startOffset))),action&&(start.deleteData(startOffset,endOffset-startOffset),range.collapse(!0)),frag;for(var current,currentLevel,clone=frag,startParents=domUtils.findParents(start,!0),endParents=domUtils.findParents(end,!0),i=0;startParents[i]==endParents[i];)i++;for(var j=i,si;si=startParents[j];j++){for(current=si.nextSibling,si==start?tmpStart||(3==range.startContainer.nodeType?(clone.appendChild(doc.createTextNode(start.nodeValue.slice(startOffset))),action&&start.deleteData(startOffset,start.nodeValue.length-startOffset)):clone.appendChild(action?start:start.cloneNode(!0))):(currentLevel=si.cloneNode(!1),clone.appendChild(currentLevel));current&¤t!==end&¤t!==endParents[j];)si=current.nextSibling,clone.appendChild(action?current:current.cloneNode(!0)),current=si;clone=currentLevel}clone=frag,startParents[i]||(clone.appendChild(startParents[i-1].cloneNode(!1)),clone=clone.firstChild);for(var j=i,ei;ei=endParents[j];j++){if(current=ei.previousSibling,ei==end?tmpEnd||3!=range.endContainer.nodeType||(clone.appendChild(doc.createTextNode(end.substringData(0,endOffset))),action&&end.deleteData(0,endOffset)):(currentLevel=ei.cloneNode(!1),clone.appendChild(currentLevel)),j!=i||!startParents[i])for(;current&¤t!==start;)ei=current.previousSibling,clone.insertBefore(action?current:current.cloneNode(!0),clone.firstChild),current=ei;clone=currentLevel}return action&&range.setStartBefore(endParents[i]?startParents[i]?endParents[i]:startParents[i-1]:endParents[i-1]).collapse(!0),tmpStart&&domUtils.remove(tmpStart),tmpEnd&&domUtils.remove(tmpEnd),frag}var Range=dom.Range=function(document){var me=this;me.startContainer=me.startOffset=me.endContainer=me.endOffset=null,me.document=document,me.collapsed=!0};function removeFillData(doc,excludeNode){try{if(fillData&&domUtils.inDoc(fillData,doc))if(fillData.nodeValue.replace(fillCharReg,"").length)fillData.nodeValue=fillData.nodeValue.replace(fillCharReg,"");else{var tmpNode=fillData.parentNode;for(domUtils.remove(fillData);tmpNode&&domUtils.isEmptyInlineElement(tmpNode)&&(browser.safari?!(domUtils.getPosition(tmpNode,excludeNode)&domUtils.POSITION_CONTAINS):!tmpNode.contains(excludeNode));)fillData=tmpNode.parentNode,domUtils.remove(tmpNode),tmpNode=fillData}}catch(e){}}function mergeSibling(node,dir){var tmpNode;for(node=node[dir];node&&domUtils.isFillChar(node);)tmpNode=node[dir],domUtils.remove(node),node=tmpNode}Range.prototype={cloneContents:function(){return this.collapsed?null:execContentsAction(this,0)},deleteContents:function(){var txt;return this.collapsed||execContentsAction(this,1),browser.webkit&&(3!=(txt=this.startContainer).nodeType||txt.nodeValue.length||(this.setStartBefore(txt).collapse(!0),domUtils.remove(txt))),this},extractContents:function(){return this.collapsed?null:execContentsAction(this,2)},setStart:function(node,offset){return setEndPoint(!0,node,offset,this)},setEnd:function(node,offset){return setEndPoint(!1,node,offset,this)},setStartAfter:function(node){return this.setStart(node.parentNode,domUtils.getNodeIndex(node)+1)},setStartBefore:function(node){return this.setStart(node.parentNode,domUtils.getNodeIndex(node))},setEndAfter:function(node){return this.setEnd(node.parentNode,domUtils.getNodeIndex(node)+1)},setEndBefore:function(node){return this.setEnd(node.parentNode,domUtils.getNodeIndex(node))},setStartAtFirst:function(node){return this.setStart(node,0)},setStartAtLast:function(node){return this.setStart(node,3==node.nodeType?node.nodeValue.length:node.childNodes.length)},setEndAtFirst:function(node){return this.setEnd(node,0)},setEndAtLast:function(node){return this.setEnd(node,3==node.nodeType?node.nodeValue.length:node.childNodes.length)},selectNode:function(node){return this.setStartBefore(node).setEndAfter(node)},selectNodeContents:function(node){return this.setStart(node,0).setEndAtLast(node)},cloneRange:function(){var me=this;return new Range(me.document).setStart(me.startContainer,me.startOffset).setEnd(me.endContainer,me.endOffset)},collapse:function(toStart){var me=this;return toStart?(me.endContainer=me.startContainer,me.endOffset=me.startOffset):(me.startContainer=me.endContainer,me.startOffset=me.endOffset),me.collapsed=!0,me},shrinkBoundary:function(ignoreEnd){var me=this,child,collapsed=me.collapsed;function check(node){return 1==node.nodeType&&!domUtils.isBookmarkNode(node)&&!dtd.$empty[node.tagName]&&!dtd.$nonChild[node.tagName]}for(;1==me.startContainer.nodeType&&(child=me.startContainer.childNodes[me.startOffset])&&check(child);)me.setStart(child,0);if(collapsed)return me.collapse(!0);if(!ignoreEnd)for(;1==me.endContainer.nodeType&&me.endOffset>0&&(child=me.endContainer.childNodes[me.endOffset-1])&&check(child);)me.setEnd(child,child.childNodes.length);return me},getCommonAncestor:function(includeSelf,ignoreTextNode){var me=this,start=me.startContainer,end=me.endContainer;return start===end?includeSelf&&selectOneNode(this)&&1==(start=start.childNodes[me.startOffset]).nodeType?start:ignoreTextNode&&3==start.nodeType?start.parentNode:start:domUtils.getCommonAncestor(start,end)},trimBoundary:function(ignoreEnd){this.txtToElmBoundary();var start=this.startContainer,offset=this.startOffset,collapsed=this.collapsed,end=this.endContainer;if(3==start.nodeType){if(0==offset)this.setStartBefore(start);else if(offset>=start.nodeValue.length)this.setStartAfter(start);else{var textNode=domUtils.split(start,offset);start===end?this.setEnd(textNode,this.endOffset-offset):start.parentNode===end&&(this.endOffset+=1),this.setStartBefore(textNode)}if(collapsed)return this.collapse(!0)}return ignoreEnd||(offset=this.endOffset,3==(end=this.endContainer).nodeType&&(0==offset?this.setEndBefore(end):(offset=container.nodeValue.length&&r["set"+c.replace(/(\w)/,(function(a){return a.toUpperCase()}))+"After"](container):r["set"+c.replace(/(\w)/,(function(a){return a.toUpperCase()}))+"Before"](container))}return!ignoreCollapsed&&this.collapsed||(adjust(this,"start"),adjust(this,"end")),this},insertNode:function(node){var first=node,length=1;11==node.nodeType&&(first=node.firstChild,length=node.childNodes.length),this.trimBoundary(!0);var start=this.startContainer,offset=this.startOffset,nextNode=start.childNodes[offset];return nextNode?start.insertBefore(node,nextNode):start.appendChild(node),first.parentNode===this.endContainer&&(this.endOffset=this.endOffset+length),this.setStartBefore(first)},setCursor:function(toEnd,noFillData){return this.collapse(!toEnd).select(noFillData)},createBookmark:function(serialize,same){var endNode,startNode=this.document.createElement("span");return startNode.style.cssText="display:none;line-height:0px;",startNode.appendChild(this.document.createTextNode("‍")),startNode.id="_baidu_bookmark_start_"+(same?"":guid++),this.collapsed||((endNode=startNode.cloneNode(!0)).id="_baidu_bookmark_end_"+(same?"":guid++)),this.insertNode(startNode),endNode&&this.collapse().insertNode(endNode).setEndBefore(endNode),this.setStartAfter(startNode),{start:serialize?startNode.id:startNode,end:endNode?serialize?endNode.id:endNode:null,id:serialize}},moveToBookmark:function(bookmark){var start=bookmark.id?this.document.getElementById(bookmark.start):bookmark.start,end=bookmark.end&&bookmark.id?this.document.getElementById(bookmark.end):bookmark.end;return this.setStartBefore(start),domUtils.remove(start),end?(this.setEndBefore(end),domUtils.remove(end)):this.collapse(!0),this},enlarge:function(toBlock,stopFn){var isBody=domUtils.isBody,pre,node,tmp=this.document.createTextNode("");if(toBlock){for(1==(node=this.startContainer).nodeType?node.childNodes[this.startOffset]?pre=node=node.childNodes[this.startOffset]:(node.appendChild(tmp),pre=node=tmp):pre=node;;){if(domUtils.isBlockElm(node)){for(node=pre;(pre=node.previousSibling)&&!domUtils.isBlockElm(pre);)node=pre;this.setStartBefore(node);break}pre=node,node=node.parentNode}for(1==(node=this.endContainer).nodeType?((pre=node.childNodes[this.endOffset])?node.insertBefore(tmp,pre):node.appendChild(tmp),pre=node=tmp):pre=node;;){if(domUtils.isBlockElm(node)){for(node=pre;(pre=node.nextSibling)&&!domUtils.isBlockElm(pre);)node=pre;this.setEndAfter(node);break}pre=node,node=node.parentNode}tmp.parentNode===this.endContainer&&this.endOffset--,domUtils.remove(tmp)}if(!this.collapsed){for(;!(0!=this.startOffset||stopFn&&stopFn(this.startContainer)||isBody(this.startContainer));)this.setStartBefore(this.startContainer);for(;!(this.endOffset!=(1==this.endContainer.nodeType?this.endContainer.childNodes.length:this.endContainer.nodeValue.length)||stopFn&&stopFn(this.endContainer)||isBody(this.endContainer));)this.setEndAfter(this.endContainer)}return this},enlargeToBlockElm:function(ignoreEnd){for(;!domUtils.isBlockElm(this.startContainer);)this.setStartBefore(this.startContainer);if(!ignoreEnd)for(;!domUtils.isBlockElm(this.endContainer);)this.setEndAfter(this.endContainer);return this},adjustmentBoundary:function(){if(!this.collapsed){for(;!domUtils.isBody(this.startContainer)&&this.startOffset==this.startContainer[3==this.startContainer.nodeType?"nodeValue":"childNodes"].length&&this.startContainer[3==this.startContainer.nodeType?"nodeValue":"childNodes"].length;)this.setStartAfter(this.startContainer);for(;!domUtils.isBody(this.endContainer)&&!this.endOffset&&this.endContainer[3==this.endContainer.nodeType?"nodeValue":"childNodes"].length;)this.setEndBefore(this.endContainer)}return this},applyInlineStyle:function(tagName,attrs,list){if(this.collapsed)return this;this.trimBoundary().enlarge(!1,(function(node){return 1==node.nodeType&&domUtils.isBlockElm(node)})).adjustmentBoundary();for(var bookmark=this.createBookmark(),end=bookmark.end,filterFn=function(node){return 1==node.nodeType?"br"!=node.tagName.toLowerCase():!domUtils.isWhitespace(node)},current=domUtils.getNextDomNode(bookmark.start,!1,filterFn),node,pre,range=this.cloneRange();current&&domUtils.getPosition(current,end)&domUtils.POSITION_PRECEDING;)if(3==current.nodeType||dtd[tagName][current.tagName]){for(range.setStartBefore(current),node=current;node&&(3==node.nodeType||dtd[tagName][node.tagName])&&node!==end;)pre=node,node=domUtils.getNextDomNode(node,1==node.nodeType,null,(function(parent){return dtd[tagName][parent.tagName]}));var frag=range.setEndAfter(pre).extractContents(),elm,aNode;if(list&&list.length>0){var level,top;top=level=list[0].cloneNode(!1);for(var i=1,ci;ci=list[i++];)level.appendChild(ci.cloneNode(!1)),level=level.firstChild;elm=level}else elm=range.document.createElement(tagName);if(attrs&&domUtils.setAttributes(elm,attrs),elm.appendChild(frag),range.insertNode(list?top:elm),"span"==tagName&&attrs.style&&/text\-decoration/.test(attrs.style)&&(aNode=domUtils.findParentByTagName(elm,"a",!0))?(domUtils.setAttributes(aNode,attrs),domUtils.remove(elm,!0),elm=aNode):(domUtils.mergeSibling(elm),domUtils.clearEmptySibling(elm)),domUtils.mergeChild(elm,attrs),current=domUtils.getNextDomNode(elm,!1,filterFn),domUtils.mergeToParent(elm),node===end)break}else current=domUtils.getNextDomNode(current,!0,filterFn);return this.moveToBookmark(bookmark)},removeInlineStyle:function(tagNames){if(this.collapsed)return this;tagNames=utils.isArray(tagNames)?tagNames:[tagNames],this.shrinkBoundary().adjustmentBoundary();for(var start=this.startContainer,end=this.endContainer;;){if(1==start.nodeType){if(utils.indexOf(tagNames,start.tagName.toLowerCase())>-1)break;if("body"==start.tagName.toLowerCase()){start=null;break}}start=start.parentNode}for(;;){if(1==end.nodeType){if(utils.indexOf(tagNames,end.tagName.toLowerCase())>-1)break;if("body"==end.tagName.toLowerCase()){end=null;break}}end=end.parentNode}var bookmark=this.createBookmark(),frag,tmpRange;start&&(frag=(tmpRange=this.cloneRange().setEndBefore(bookmark.start).setStartBefore(start)).extractContents(),tmpRange.insertNode(frag),domUtils.clearEmptySibling(start,!0),start.parentNode.insertBefore(bookmark.start,start)),end&&(frag=(tmpRange=this.cloneRange().setStartAfter(bookmark.end).setEndAfter(end)).extractContents(),tmpRange.insertNode(frag),domUtils.clearEmptySibling(end,!1,!0),end.parentNode.insertBefore(bookmark.end,end.nextSibling));for(var current=domUtils.getNextDomNode(bookmark.start,!1,(function(node){return 1==node.nodeType})),next;current&¤t!==bookmark.end;)next=domUtils.getNextDomNode(current,!0,(function(node){return 1==node.nodeType})),utils.indexOf(tagNames,current.tagName.toLowerCase())>-1&&domUtils.remove(current,!0),current=next;return this.moveToBookmark(bookmark)},getClosedNode:function(){var node;if(!this.collapsed){var range=this.cloneRange().adjustmentBoundary().shrinkBoundary();if(selectOneNode(range)){var child=range.startContainer.childNodes[range.startOffset];child&&1==child.nodeType&&(dtd.$empty[child.tagName]||dtd.$nonChild[child.tagName])&&(node=child)}}return node},select:browser.ie?function(noFillData,textRange){var nativeRange;this.collapsed||this.shrinkBoundary();var node=this.getClosedNode();if(node&&!textRange){try{(nativeRange=this.document.body.createControlRange()).addElement(node),nativeRange.select()}catch(e){}return this}var bookmark=this.createBookmark(),start=bookmark.start,end;if((nativeRange=this.document.body.createTextRange()).moveToElementText(start),nativeRange.moveStart("character",1),this.collapsed){if(!noFillData&&3!=this.startContainer.nodeType){var tmpText=this.document.createTextNode(fillChar),tmp=this.document.createElement("span");tmp.appendChild(this.document.createTextNode(fillChar)),start.parentNode.insertBefore(tmp,start),start.parentNode.insertBefore(tmpText,start),removeFillData(this.document,tmpText),fillData=tmpText,mergeSibling(tmp,"previousSibling"),mergeSibling(start,"nextSibling"),nativeRange.moveStart("character",-1),nativeRange.collapse(!0)}}else{var nativeRangeEnd=this.document.body.createTextRange();end=bookmark.end,nativeRangeEnd.moveToElementText(end),nativeRange.setEndPoint("EndToEnd",nativeRangeEnd)}this.moveToBookmark(bookmark),tmp&&domUtils.remove(tmp);try{nativeRange.select()}catch(e){}return this}:function(notInsertFillData){function checkOffset(rng){function check(node,offset,dir){3==node.nodeType&&node.nodeValue.length0)endIndex=index-1;else{if(!(position<0))return{container:parent,offset:getIndex(child)};startIndex=index+1}}if(-1==index){if(testRange.moveToElementText(parent),testRange.setEndPoint("StartToStart",range),distance=testRange.text.replace(/(\r\n|\r)/g,"\n").length,siblings=parent.childNodes,!distance)return{container:child=siblings[siblings.length-1],offset:child.nodeValue.length};for(var i=siblings.length;distance>0;)distance-=siblings[--i].nodeValue.length;return{container:siblings[i],offset:-distance}}if(testRange.collapse(position>0),testRange.setEndPoint(position>0?"StartToStart":"EndToStart",range),!(distance=testRange.text.replace(/(\r\n|\r)/g,"\n").length))return dtd.$empty[child.tagName]||dtd.$nonChild[child.tagName]?{container:parent,offset:getIndex(child)+(position>0?0:1)}:{container:child,offset:position>0?0:child.childNodes.length};for(;distance>0;)try{var pre=child;distance-=(child=child[position>0?"previousSibling":"nextSibling"]).nodeValue.length}catch(e){return{container:parent,offset:getIndex(pre)}}return{container:child,offset:position>0?-distance:child.nodeValue.length+distance}}function transformIERangeToRange(ieRange,range){if(ieRange.item)range.selectNode(ieRange.item(0));else{var bi=getBoundaryInformation(ieRange,!0);range.setStart(bi.container,bi.offset),0!=ieRange.compareEndPoints("StartToEnd",ieRange)&&(bi=getBoundaryInformation(ieRange,!1),range.setEnd(bi.container,bi.offset))}return range}function _getIERange(sel){var ieRange;try{ieRange=sel.getNative().createRange()}catch(e){return null}var el=ieRange.item?ieRange.item(0):ieRange.parentElement();return(el.ownerDocument||el)===sel.document?ieRange:null}var Selection;(dom.Selection=function(doc){var me=this,iframe;me.document=doc,browser.ie9below&&(iframe=domUtils.getWindow(doc).frameElement,domUtils.on(iframe,"beforedeactivate",(function(){me._bakIERange=me.getIERange()})),domUtils.on(iframe,"activate",(function(){try{!_getIERange(me)&&me._bakIERange&&me._bakIERange.select()}catch(ex){}me._bakIERange=null}))),iframe=doc=null}).prototype={rangeInBody:function(rng,txtRange){var node=browser.ie9below||txtRange?rng.item?rng.item():rng.parentElement():rng.startContainer;return node===this.document.body||domUtils.inDoc(node,this.document)},getNative:function(){var doc=this.document;try{return doc?browser.ie9below?doc.selection:domUtils.getWindow(doc).getSelection():null}catch(e){return null}},getIERange:function(){var ieRange=_getIERange(this);return!ieRange&&this._bakIERange?this._bakIERange:ieRange},cache:function(){this.clear(),this._cachedRange=this.getRange(),this._cachedStartElement=this.getStart(),this._cachedStartElementPath=this.getStartElementPath()},getStartElementPath:function(){if(this._cachedStartElementPath)return this._cachedStartElementPath;var start=this.getStart();return start?domUtils.findParents(start,!0,null,!0):[]},clear:function(){this._cachedStartElementPath=this._cachedRange=this._cachedStartElement=null},isFocus:function(){try{if(browser.ie9below){var nativeRange=_getIERange(this);return!(!nativeRange||!this.rangeInBody(nativeRange))}return!!this.getNative().rangeCount}catch(e){return!1}},getRange:function(){var me=this;function optimze(range){for(var child=me.document.body.firstChild,collapsed=range.collapsed;child&&child.firstChild;)range.setStart(child,0),child=child.firstChild;range.startContainer||range.setStart(me.document.body,0),collapsed&&range.collapse(!0)}if(null!=me._cachedRange)return this._cachedRange;var range=new baidu.editor.dom.Range(me.document);if(browser.ie9below){var nativeRange=me.getIERange();if(nativeRange)try{transformIERangeToRange(nativeRange,range)}catch(e){optimze(range)}else optimze(range)}else{var sel=me.getNative();if(sel&&sel.rangeCount){var firstRange=sel.getRangeAt(0),lastRange=sel.getRangeAt(sel.rangeCount-1);range.setStart(firstRange.startContainer,firstRange.startOffset).setEnd(lastRange.endContainer,lastRange.endOffset),range.collapsed&&domUtils.isBody(range.startContainer)&&!range.startOffset&&optimze(range)}else{if(this._bakRange&&domUtils.inDoc(this._bakRange.startContainer,this.document))return this._bakRange;optimze(range)}}return this._bakRange=range},getStart:function(){if(this._cachedStartElement)return this._cachedStartElement;var range=browser.ie9below?this.getIERange():this.getRange(),tmpRange,start,tmp,parent;if(browser.ie9below){if(!range)return this.document.body.firstChild;if(range.item)return range.item(0);for((tmpRange=range.duplicate()).text.length>0&&tmpRange.moveStart("character",1),tmpRange.collapse(1),start=tmpRange.parentElement(),parent=tmp=range.parentElement();tmp=tmp.parentNode;)if(tmp==start){start=parent;break}}else if(range.shrinkBoundary(),1==(start=range.startContainer).nodeType&&start.hasChildNodes()&&(start=start.childNodes[Math.min(start.childNodes.length-1,range.startOffset)]),3==start.nodeType)return start.parentNode;return start},getText:function(){var nativeSel,nativeRange;return this.isFocus()&&(nativeSel=this.getNative())?(nativeRange=browser.ie9below?nativeSel.createRange():nativeSel.getRangeAt(0),browser.ie9below?nativeRange.text:nativeRange.toString()):""},clearRange:function(){this.getNative()[browser.ie9below?"empty":"removeAllRanges"]()}}}(),function(){var uid=0,_selectionChangeTimer;function setValue(form,editor){var textarea;if(editor.textarea)if(utils.isString(editor.textarea)){for(var i=0,ti,tis=domUtils.getElementsByTagName(form,"textarea");ti=tis[i++];)if(ti.id=="ueditor_textarea_"+editor.options.textarea){textarea=ti;break}}else textarea=editor.textarea;textarea||(form.appendChild(textarea=domUtils.createElement(document,"textarea",{name:editor.options.textarea,id:"ueditor_textarea_"+editor.options.textarea,style:"display:none"})),editor.textarea=textarea),!textarea.getAttribute("name")&&textarea.setAttribute("name",editor.options.textarea),textarea.value=editor.hasContents()?editor.options.allHtmlEnabled?editor.getAllHtml():editor.getContent(null,null,!0):""}function loadPlugins(me){for(var pi in UE.plugins)UE.plugins[pi].call(me)}function checkCurLang(I18N){for(var lang in I18N)return lang}function langReadied(me){me.langIsReady=!0,me.fireEvent("langReady")}var Editor=UE.Editor=function(options){var me=this;me.uid=uid++,EventBase.call(me),me.commands={},me.options=utils.extend(utils.clone(options||{}),UEDITOR_CONFIG,!0),me.shortcutkeys={},me.inputRules=[],me.outputRules=[],me.setOpt(Editor.defaultOptions(me)),me.loadServerConfig(),utils.isEmptyObject(UE.I18N)?utils.loadFile(document,{src:me.options.langPath+me.options.lang+"/"+me.options.lang+".js",tag:"script",type:"text/javascript",defer:"defer"},(function(){UE.plugin.load(me),langReadied(me)})):(me.options.lang=checkCurLang(UE.I18N),UE.plugin.load(me),langReadied(me)),UE.instants["ueditorInstant"+me.uid]=me};Editor.prototype={registerCommand:function(name,obj){this.commands[name]=obj},ready:function(fn){var me=this;fn&&(me.isReady?fn.apply(me):me.addListener("ready",fn))},setOpt:function(key,val){var obj={};utils.isString(key)?obj[key]=val:obj=key,utils.extend(this.options,obj,!0)},getOpt:function(key){return this.options[key]},destroy:function(){var me=this;me.fireEvent("destroy");var container=me.container.parentNode,textarea=me.textarea;textarea?textarea.style.display="":(textarea=document.createElement("textarea"),container.parentNode.insertBefore(textarea,container)),textarea.style.width=me.iframe.offsetWidth+"px",textarea.style.height=me.iframe.offsetHeight+"px",textarea.value=me.getContent(),textarea.id=me.key,container.innerHTML="",domUtils.remove(container);var key=me.key;for(var p in me)me.hasOwnProperty(p)&&delete this[p];UE.delEditor(key)},render:function(container){var me=this,options=me.options,getStyleValue=function(attr){return parseInt(domUtils.getComputedStyle(container,attr))};if(utils.isString(container)&&(container=document.getElementById(container)),container){options.initialFrameWidth?options.minFrameWidth=options.initialFrameWidth:options.minFrameWidth=options.initialFrameWidth=container.offsetWidth,options.initialFrameHeight?options.minFrameHeight=options.initialFrameHeight:options.initialFrameHeight=options.minFrameHeight=container.offsetHeight,container.style.width=/%$/.test(options.initialFrameWidth)?"100%":options.initialFrameWidth-getStyleValue("padding-left")-getStyleValue("padding-right")+"px",container.style.height=/%$/.test(options.initialFrameHeight)?"100%":options.initialFrameHeight-getStyleValue("padding-top")-getStyleValue("padding-bottom")+"px",container.style.zIndex=options.zIndex;var html=(ie&&browser.version<9?"":"")+""+(options.iframeCssUrl?"":"")+(options.initialStyle?"":"")+"