2009-07-09 9 views
6

Gibt es eine JS-Funktion, die die Farbe eines bestimmten Textes in einem Textarea ändern kann?Javascript - Ändern der Schriftfarbe eines bestimmten Textes in Textfeld

Zum Beispiel wird blar blar {blar} blar, {blar}, einschließlich {}, in blau angezeigt. Andere Wörter sind leer. Mit anderen Worten, alles, was ich brauche, ist eine Funktion, die die Farbe aller Texte in {} ändern kann.

Ich habe einige Studien gemacht und es scheint, dass die meisten Leute sagen, dass es nicht getan werden kann. Aber ich sehe Rich-Text-Editoren oder solche WYSIWYG-Editoren, die Wörter fett oder unterstreichen können. Es muss einen Weg geben, es zu tun.

Jeder Vorschlag ist willkommen.

+0

retaggt, weil "jtextarea" nicht für HTML oder JavaScript existiert. Vielleicht oder an Java Swing gedacht? –

+0

Bitte geben Sie an, welches Muster Sie verwenden, um den Text zu finden. Möchten Sie ein bestimmtes Muster programmatisch ersetzen? –

Antwort

2

können Sie eine TextArea nicht verwenden, um das per se zu tun.

Aber Javascript ist dein Freund. Vielleicht sollten Sie sich den Code einiger Rich-Text-Editoren ansehen.

Sie könnten mit lwrte beginnen, da es sein "Leichtgewicht" sagt. Außerdem ist es in jQuery geschrieben, so dass es ziemlich einfach zu verstehen ist. (und ich bin ein jQuery Fanboy).

Hoffnung, dass

JRH

3

wysiwig-Editoren verwenden iframes statt Textbereiche hilft. Textareas sind sehr wenig anpassbar, da Sie einen Teil des Inhalts ändern wollen. Sie können keine Tags innerhalb eines Textfelds hinzufügen, wodurch es unmöglich wird, nur einen Teil des Textes zu ändern.

Wenn Sie sich den Editor hier in SO ansehen, schreiben Sie normalen Text in ein Textfeld, und es wird dann in das Feld darunter transformiert, so dass Sie das Asterix in der Textbox sehen, aber in der Box unten, Es wird transformieren Sonderzeichen durch Regexing sie mit Tags.

Wenn Sie Firebug verwenden, können Sie mit dem Schreiben in den Editor beginnen, während Sie den HTML-Code in der Vorschau-Box betrachten.

8

Niemand erwähnt Inhalt editable?
Machen Sie einfach ein contentEditable div und verwenden Sie Javascript, um es zu stylen.
Ich empfehle Ihnen, in die Dojo Toolkit's zu schauen.
Es hat eine Editor widget.

Weitere Informationen:
Some contentEditable problems in IE.
How to use contentEditable with jQuery or without it.

+0

+1 oh, coole Reihe von Links! Hinzufügen zu Lesezeichen. Danke! – jrharshath

+0

BTW, ich fand, dass 'contentEditable' nicht mit FF2 kompatibel ist. Scheitern! :( – jrharshath

+0

Bist du sicher? Es scheint mir ziemlich seltsam. Das Dojo-Editor-Widget funktioniert auch auf FF 2. –

0

ich Sie denken, wird execCommand Methode verwenden, müssen Sie Javascript es specifc Textfarbe ändern viele Dinge so dieses Zeug steuert

Grüße

0

Aber einige JQuery WYSIWYG-Redakteure tun dies! Wie ist das möglich ? Siehe diesen Editor lwrte