Javascript - 更改textarea中某些文本的字体颜色

时间:2009-07-09 06:28:41

标签: javascript richtextbox textarea wysiwyg contenteditable

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

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

我做过一些研究,似乎大多数人都说不能做。但我看到富文本编辑或那些具有粗体或下划线字母能力的编辑。必须有办法做到这一点。

欢迎提出任何建议。

5 个答案:

答案 0 :(得分:8)

没有人提到contentEditable?
只需创建一个contentEditable div并使用javascript来设置它的样式 我建议您查看Dojo Toolkit's 它有一个Editor widget

其他资源:
Some contentEditable problems in IE.
How to use contentEditable with jQuery or without it.

答案 1 :(得分:3)

wysiwig-editors正在使用iframe而不是textareas。 Textareas很少可定制,因为你所追求的是改变部分内容。您无法在textarea中添加标签,这使得无法仅更改部分文本。

如果你在SO中查看编辑器,你可以在textarea中编写普通文本,然后在它下面的框中进行转换,这样你就可以在文本框中看到asterix,但是在下面的框中,它'll 通过用标签重新标记特殊字符来转换

如果你正在使用firebug,你可以在编辑器内部开始编写,同时在预览框中查看HTML。

答案 2 :(得分:2)

你不能使用 textarea 来做到这一点。

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

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

希望有所帮助,

JRH

答案 3 :(得分:0)

我认为你需要使用javascript的execCommand方法它控制很多东西这样改变特定textcolor的东西

此致

答案 4 :(得分:0)

但有些Jquery WYSIWYG编辑会这样做!怎么可能?请参阅此编辑器lwrte