8

是否有任何可以更改文本区域中某些文本颜色的 JS 函数?

例如,blar blar {blar} blar、{blar},包括 { },将是蓝色的。其他字为空白。换句话说,我所需要的只是一个可以改变 { } 中所有文本颜色的函数。

我做了一些研究,似乎大多数人都说做不到。但我看到富文本编辑器或那些所见即所得的编辑器能够加粗或下划线。必须有办法做到这一点。

欢迎任何建议。

4

5 回答 5

8

没有人提到 contentEditable?
只需制作一个 contentEditable div 并使用 javascript 对其进行样式设置。
我建议您查看Dojo Toolkit 的.
它有一个编辑器小部件

其他资源:
IE 中的一些 contentEditable 问题。
如何使用 jQuery 或没有它的 contentEditable。

于 2009-07-09T06:59:58.763 回答
3

所见即所得的编辑器使用 iframe 而不是 textareas。文本区域很少可定制,因为您所追求的是更改部分内容。您不能在文本区域内添加标签,这使得仅更改部分文本成为不可能。

如果您在 SO 中查看此处的编辑器,您在 textarea 中编写普通文本,然后在其下方的框中对其进行转换,因此您将在文本框中看到星号,但在下面的框中,它将转换通过使用标签对特殊字符进行正则表达式。

如果您使用的是 firebug,则可以在编辑器中开始编写,同时查看预览框中的 HTML。

于 2009-07-09T06:35:48.983 回答
2

你不能使用textarea来做到这一点,就其本身而言。

但是,javascript 是你的朋友。或许你应该看看一些富文本编辑器的代码。

你可以从lwrte开始,因为它说它是“轻量级的”。此外,它是用 jquery 编写的,因此很容易理解。(而且我是一个 jquery 粉丝)。

希望有帮助,

jrh

于 2009-07-09T06:33:03.823 回答
0

我认为您将需要使用javascript的execCommand方法来控制很多事情,例如更改特定的textcolor

问候

于 2010-02-16T21:43:00.947 回答
0

但是一些 Jquery WYSIWYG 编辑器会这样做!这怎么可能?看到这个编辑器lwrte

于 2010-06-07T14:54:17.183 回答