【问题标题】:Better approach than using append in div contenteditable比在 div contenteditable 中使用 append 更好的方法
【发布时间】:2015-02-12 02:49:40
【问题描述】:

我有一个内容可编辑的 div,如果用户在某些内容后按下回车键,则会创建两个中断标签。

line 1
</br>
</br>

如果用户手动开始输入它会变成

line 1
</br>
line 2
</br>

但我正在使用 jQuery 附加函数来放置一些 html 内容

jQuery('.editor').append(e.target.innerHTML);

但它变成了

line 1
</br>
</br>
html content

有什么办法可以让内容之间没有两行间隔?

【问题讨论】:

    标签: javascript jquery html dom jquery-plugins


    【解决方案1】:

    我也遇到过同样的问题,有时还会添加'&lt','$gt'等。我使用下面的正则表达式删除了所有的 html 标签。当您调用 onblur 事件时,在函数内部使用以下代码删除标签。即使您将内容复制并粘贴到可编辑的 div 中,它也可以工作。

    x = x.replace(/(<[^\\>]*>|<br\/>|&amp;|amp;|&lt|&gt;)/g, '');
    x = x.trim();
    

    希望这是您正在寻找的。​​p>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 2015-11-08
      • 2017-06-26
      • 1970-01-01
      相关资源
      最近更新 更多