Javascript超初心者です。すみません。
閲覧ありがとうございます!
いまフォームで打たれた文字に対して、色を変えるということを
やりたいと思ってjsを弄っています。
if文を使って、打たれた文字に対して緑色に変えるということを
行いたいです。
returnColor(str) {
if(str="打たれた文字") color:"greeen";
}
というように、コードを書けば表示されるのでしょうか?
Arrayなどの配列から文字列を登録して、登録した文字列を検索して、
マッチしたものを"Green"として表示させるためには、どこをどう
弄ればいいでしょうか?
以上、よろしくお願いします。
みんなの回答 4 件
「javascript 文字 検索 色」あたりでGoogleで検索してみてください。きっと同じような事しようとしてる人が見つかります。
イマイチやりたいことの要件がわからないけど、いくつかの機能を用意しないといけないですね。
既に出来上がった、jQueryのサンプルがありましたけど、初心者の方がみたら、気が遠くなるなるかもしれせんね。
理屈がわかってしまえば、そんなに難しいくはないです。
Sample - highlight: JavaScript text higlighting jQuery plugin
http://deeeki.sitemix.jp/sample/jquery_highlight/フォームの文字色をcssで変更したらダメ?
ひょっとしたら、textareaに入力された特定の文字色を変えたいの人?
もしそうだとしたら、それは仕様上不可能だし、擬似的に実装するにしても、初心者には難しすぎると思う。
とりあえず日本語でおk
>if文を使って、打たれた文字に対して緑色に変えるということを
行いたいです。
緑色に変えるのは
①特定部分
②全体
のどちらかなのか
その要素は
①入力フォーム
②入力内容を別途表示する
のどちらなのか
そこの部分がはっきりしないと回答しようがないかと。
ちなみに文字のマッチングには正規表現を使います。
具体的にはif (str.match(/^.*hogehoge.*$/))というように文字列にマッチするかどうかをチェックします。
ただし特定部分だけを変更させるのならもっと簡単で、str.replace(/hogehoge/, ’<span style="color: green">hogehoge</span>’)としてしまえばマッチングさせるまでもありませんね。
また変更する要素は入力フォームの場合、特定文字だけの文字色を変更させることは原則できません。(①-①の場合)
原則ということで不可能ではありませんが、擬似的に上から別の要素をコピーしながらかぶせる必要があるので難解な作業になるからです。
関連するトピックス