| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | 
							- /**
 
-  * 插入分割线插件
 
-  * @file
 
-  * @since 1.2.6.1
 
-  */
 
- /**
 
-  * 插入分割线
 
-  * @command horizontal
 
-  * @method execCommand
 
-  * @param { String } cmdName 命令字符串
 
-  * @example
 
-  * ```javascript
 
-  * editor.execCommand( 'horizontal' );
 
-  * ```
 
-  */
 
- UE.plugins['horizontal'] = function(){
 
-     var me = this;
 
-     me.commands['horizontal'] = {
 
-         execCommand : function( cmdName ) {
 
-             var me = this;
 
-             if(me.queryCommandState(cmdName)!==-1){
 
-                 me.execCommand('insertHtml','<hr>');
 
-                 var range = me.selection.getRange(),
 
-                     start = range.startContainer;
 
-                 if(start.nodeType == 1 && !start.childNodes[range.startOffset] ){
 
-                     var tmp;
 
-                     if(tmp = start.childNodes[range.startOffset - 1]){
 
-                         if(tmp.nodeType == 1 && tmp.tagName == 'HR'){
 
-                             if(me.options.enterTag == 'p'){
 
-                                 tmp = me.document.createElement('p');
 
-                                 range.insertNode(tmp);
 
-                                 range.setStart(tmp,0).setCursor();
 
-                             }else{
 
-                                 tmp = me.document.createElement('br');
 
-                                 range.insertNode(tmp);
 
-                                 range.setStartBefore(tmp).setCursor();
 
-                             }
 
-                         }
 
-                     }
 
-                 }
 
-                 return true;
 
-             }
 
-         },
 
-         //边界在table里不能加分隔线
 
-         queryCommandState : function() {
 
-             return domUtils.filterNodeList(this.selection.getStartElementPath(),'table') ? -1 : 0;
 
-         }
 
-     };
 
- //    me.addListener('delkeyup',function(){
 
- //        var rng = this.selection.getRange();
 
- //        if(browser.ie && browser.version > 8){
 
- //            rng.txtToElmBoundary(true);
 
- //            if(domUtils.isStartInblock(rng)){
 
- //                var tmpNode = rng.startContainer;
 
- //                var pre = tmpNode.previousSibling;
 
- //                if(pre && domUtils.isTagNode(pre,'hr')){
 
- //                    domUtils.remove(pre);
 
- //                    rng.select();
 
- //                    return;
 
- //                }
 
- //            }
 
- //        }
 
- //        if(domUtils.isBody(rng.startContainer)){
 
- //            var hr = rng.startContainer.childNodes[rng.startOffset -1];
 
- //            if(hr && hr.nodeName == 'HR'){
 
- //                var next = hr.nextSibling;
 
- //                if(next){
 
- //                    rng.setStart(next,0)
 
- //                }else if(hr.previousSibling){
 
- //                    rng.setStartAtLast(hr.previousSibling)
 
- //                }else{
 
- //                    var p = this.document.createElement('p');
 
- //                    hr.parentNode.insertBefore(p,hr);
 
- //                    domUtils.fillNode(this.document,p);
 
- //                    rng.setStart(p,0);
 
- //                }
 
- //                domUtils.remove(hr);
 
- //                rng.setCursor(false,true);
 
- //            }
 
- //        }
 
- //    })
 
-     me.addListener('delkeydown',function(name,evt){
 
-         var rng = this.selection.getRange();
 
-         rng.txtToElmBoundary(true);
 
-         if(domUtils.isStartInblock(rng)){
 
-             var tmpNode = rng.startContainer;
 
-             var pre = tmpNode.previousSibling;
 
-             if(pre && domUtils.isTagNode(pre,'hr')){
 
-                 domUtils.remove(pre);
 
-                 rng.select();
 
-                 domUtils.preventDefault(evt);
 
-                 return true;
 
-             }
 
-         }
 
-     })
 
- };
 
 
  |