【问题标题】:Jquery get and set css attribute of some part of html stringJquery获取和设置html字符串某些部分的css属性
【发布时间】:2015-10-13 10:22:35
【问题描述】:

我正在编写一个 html 编辑器控件。 我想更改内容的选定文本的 css 属性。 我通过 window.getSelection(); 使粗体选定文本和理解选定文本的最佳方法是粗体然后使其正常。 替换为所需的标签不起作用。因为类似的文本可以在内容中。 对我来说这看起来很复杂。 我正在寻找最佳做法。

【问题讨论】:

  • 我强烈建议您使用第 3 方编辑器,除非您想要一些非常基本和简单的东西。
  • 要使文本变为粗体,请在所选文本上添加<strong> 标签并了解所选文本是否为粗体,您可以检查<strong>。这有意义吗?
  • 尽量避免要求“最佳方式” 为您的问题做事的方式可能会被标记为“基于意见”
  • @Aabid 让我们说我的文字类似于“aaa bbb aa bbbb cccc”,我想在第二个 bbb 部分加粗,以后想取消加粗,我该怎么做?我怎么理解哪个 bbb?
  • @m02ph3u5 我的意思是这个问题的最佳实践。

标签: javascript jquery html css editor


【解决方案1】:

试试这个示例 sn-p

您可以通过“document.execCommand('bold');”将所选文本设为粗体

HTML

<div contenteditable="true" class="textEditor">Text1.
    Text2.
    Text3.
    Text4.
    Hi, this is text of some kind
Lorem ipsum...
</div>

jQuery

​​>
  1. 通过 jquery-selectionchange 事件捕获选择更改事件。
  2. 通过 document.execCommand('bold'); 使粗体正常化;
 $(document).on('selectionchange', function(e) { 
            document.execCommand('bold');
    });

JsFiddle:

http://jsfiddle.net/XCb95/132/

【讨论】:

  • 这正是我要找的。​​span>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-26
相关资源
最近更新 更多