2009-07-09 7 views
6

Y at-il une fonction JS qui peut changer la couleur de certains textes dans une zone de texte? Par exemple, blar blar {blar} blar, {blar}, y compris {}, seront en bleu. Par exemple, blar blar {blar} blar, {blar}. Les autres mots seront en blanc. En d'autres termes, tout ce dont j'ai besoin est une fonction qui peut changer la couleur de tout le texte dans {}.Javascript - Changer la couleur de la police de certains textes dans textarea

J'ai fait quelques études et il semble que la plupart des gens disent que ce n'est pas possible. Mais je vois des éditeurs de texte riches ou ces éditeurs wysiwyg ayant la possibilité de mettre en gras ou de souligner des mots. Il doit y avoir un moyen de le faire.

Toute suggestion est la bienvenue.

+0

retaggt, car "jtextarea" n'existe pas pour HTML ni JavaScript. Peut-être ou pensé à Java Swing ...? –

+0

Veuillez spécifier le motif que vous utilisez pour trouver le texte. Voulez-vous remplacer un certain modèle par programme? –

Répondre

2

vous ne pouvez pas utiliser une zone de texte pour ce faire, en tant que tel.

Mais, javascript est votre ami. Peut-être devriez-vous jeter un coup d'œil au code de quelques éditeurs de texte riche.

Vous pourriez commencer par lwrte, puisqu'il est dit "léger". Aussi, il est écrit en jquery donc il sera assez facile à comprendre. (et je suis un fan de jquery).

Espoir qui aide,

HJR

3

WYSIWIG éditeurs utilisent iframes au lieu de textareas. Les zones de texte sont très peu personnalisables, car ce que vous cherchez est en train de changer une partie du contenu. Vous ne pouvez pas ajouter de balises à l'intérieur d'une zone de texte, ce qui rend impossible de ne modifier qu'une partie du texte. Si vous regardez l'éditeur ici dans SO, vous écrivez du texte normal à l'intérieur d'une zone de texte, et il est ensuite transformé dans la boîte ci-dessous, de sorte que vous verrez l'astérisque dans la zone de texte, mais dans la boîte ci-dessous, il va transformer les caractères spéciaux en les regexing avec des balises.

Si vous utilisez firebug, vous pouvez commencer à écrire dans l'éditeur, tout en regardant le code HTML dans la zone de prévisualisation.

8

Personne n'a mentionné contentEditable?
Créez simplement un div contentEditable et utilisez javascript pour le styler.
Je vous recommande de regarder dans le Dojo Toolkit's.
Il a un Editor widget.

Autres ressources:
Some contentEditable problems in IE.
How to use contentEditable with jQuery or without it.

+0

+1 oh, cool jeu de liens! en les ajoutant à des signets .. merci! – jrharshath

+0

btw, j'ai trouvé que 'contentEditable' n'est pas compatible avec FF2. échouer! :( – jrharshath

+0

Etes-vous sûr? Cela me semble plutôt étrange Le widget éditeur dojo fonctionne aussi sur FF 2. –

0

Je pense que vous aurez besoin d'utiliser la méthode execCommand de javascript il contrôle beaucoup de chose comme ce genre de choses de changer textcolor specifc

Cordialement

0

Mais certains Les éditeurs JQuery WYSIWYG le font! Comment est-ce possible ? Voir cet éditeur lwrte

Questions connexes