-1

我是javascripting的新手我正在使用我的复制内容代码我正在复制具有一些富文本格式的文本并粘贴在一些应用了其他富格式的文本之间然后在粘贴时使用下面的代码有时它正在插入新行文本之间如何解决

function CopyContents() {
        var finalnode;
        if (typeof window.getSelection != "undefined") {
            var sel = window.getSelection();
            docFrag = sel.getRangeAt(0).cloneContents();
            var ndd = docFrag.cloneNode(true);
            var par = sel.getRangeAt(0).startContainer;
            docFrag = extractNodesWithStyle(par.parentNode,ndd);
        }
    }



function PasteContents() {
        var sel = window.getSelection();
        var Node = sel.focusNode; 
        var rang = sel.getRangeAt(0);
        if(rang.endOffset < Node.nodeValue.length) {
            var srange = document.createRange();
            srange.setStart(Node,rang.endOffset);
            srange.setEnd(Node,Node.nodeValue.length);
            var df = srange.extractContents();
            var ndd = df.firstChild.cloneNode(false);
            df = extractNodesWithStyle(sel.focusNode.parentNode,ndd);
            var par = Node.parentNode;
            var ns = par.nextSibling;
            par.parentNode.insertBefore( df, par.nextSibling );
            par.parentNode.insertBefore( docFrag.cloneNode(true), par.nextSibling );
        }else {
            Node.parentNode.insertBefore( docFrag.cloneNode(true), Node.nextSibling );
        }       
    }
4

1 回答 1

0

您是否尝试过使用正则表达式来消除空格?将该正则表达式应用于您想要摆脱间距的项目。在下面的示例中,str 是您要从中删除换行符的字符串。

 str.replace(/\s+/g, ' ');
于 2013-03-05T09:15:33.163 回答