チャットフォームで文字色をランダムに変える方法

このQ&Aのポイント
  • ローカルサーバーで簡易チャットを使っている際に、チャット上で文字色をランダムに変えるプログラムを作成したい。現在はonLoadで通常の文字色を変えることができているが、フォーム上での文字色の変更ができない。どのようにすればチャットで文字色をランダムに変えることができるのか、ご教示いただきたい。
  • チャットフォームを使用している際に、文字色をランダムに変えるプログラムを作成したい。現在はonLoadで通常の文字色を変えることができているが、フォーム上での文字色の変更がうまくいかない。チャットで文字色をランダムに変える方法を教えていただけますか?
  • 簡易チャットを利用している際に、チャット上で文字色をランダムに変えるプログラムを作成したい。onLoadで通常の文字色を変えることはできたが、フォーム上での文字色の変更ができない。チャットで文字色をランダムに変える手段について、アドバイスをいただきたい。
回答を見る
  • ベストアンサー

チャットフォームで文字色をランダムに

ローカルサーバーで簡易チャット使っているのですが、そこでチャット上でランダムで文字色を変えるプログラムを作りたいのですが、 <script language="javascript"> <!--// function Changecolor() { strColorCode = ""; var arrColor = new Array("LightGreen", ~~~~~~~~~~~中略~~~~~~~~~~~~~ "DarkRed") //処理スタート nTemp = Math.round(Math.random()*63) strColorCode = "#" + arrColor[nTemp]; document.fgColor = strColorCode;; } //--> (登録している色の数は63色) といったプログラムを作ったのですが、onLoadで指定することで通常の文字色を変えることができたのですが、ここからチャットで使うことができません。 フォーム上での文字色の名前はcolorにしてあるのですが、valueで指定しても色は変わりませんよね? どうすればチャットで文字色をランダムに変えることができるのでしょうか? 分かりにくい質問ですみません。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

「フォーム上の」というのは「textareaとかinput」のことですか? function setCSS(strc){ for( i = 0; i < document.getElementsByTagName("textarea").length; i++) { document.getElementsByTagName("textarea")[i].style.color = strc; } for( i = 0; i < document.getElementsByTagName("input").length; i++) { document.getElementsByTagName("input")[i].style.color = strc; } } を追加してChangecolor()の document.fgColor = strColorCode;;を setCSS(strColorCode);に変更してください。 fgColorはテキストの色しか変更できません。 textareaやinputに対してCSSを変更すればできるかと。 で、疑問に思ったのですが、 strColorCode = "#" + arrColor[nTemp]; って何がしたいのですか? arrColorには色名が入っているのに#をつける意味が分かりません。

migrant
質問者

お礼

回答ありがとうございます。 strColorCode = "#" + arrColor[nTemp];のところは最初に16進数で指定していたので消し忘れていただけです。 それとフォーム上で文字色をcolorとして 文字色 <select name=color> <option value="#DF0000">赤 ~~~~~中略~~~~~ <option value="#FF8040">オレンジ </select> と言う選択を付けているのですが、これでvalue="setCSS(strc)"としてもならないと思うのですが、どうやって指定すればいいのでしょうか?

その他の回答 (2)

回答No.3

No2ですがミスってます。 気づいて修正してくれてると思いますが、 setCSSがgetCSSになってます。 そのまま文面どおりに写すとエラーになりますので。

回答No.2

<select onchange="getCSS(this.options[this.selectedIndex].value);"> に変更してください。 選択しているoptionが変更されたとき、その新しく選択したoptionのvalueをgetCSS();の変数として実行します。 で、前回(No1)の回答ですが、 getCSSはtextareaとinputの全ての文字色を変更するようになってます。 背景食を変更したい場合は document.getElementsByTagName("タグ名")[i].style.color = strc;を document.getElementsByTagName("タグ名")[i].style.backgroundColor = strc;と変更してください。

migrant
質問者

お礼

ありがとうございました。 うまくできました。

関連するQ&A

  • ランダムに問題を出すプログラム

    ランダムに問題を出すプログラムを作ろうとしています。 合っていれば次の問題をランダムに、間違っていれば合うまで同じ問題を出したいです。 <SCRIPT language="javascript"> m1=new Array(); m2=new Array(); 中略 </SCRIPT> m=Math.floor(Math.random()*37) document.write(m1[m]); <FORM onSubmit="if (this.elements[0].value==m2[m]) {alert('正解です!')} else ( alert('間違い'))"> <INPUT type="text" value=""> <INPUT type="submit" value="入力後ここを押す"> </FORM> </SCRIPT> これだと、合っていても間違っていても次は新たにランダムで選ばれた問題がでます。 どういう処理をしたらいいでしょうか? どうかお願いいたします。

  • ランダムURL表示&被らないようにしたいです!

    window.onload = function(){ var nice_a = 3; var nice_b = 3; var nice_c = 3; var nice_d = 3; var ifm_3 = document.getElementById('nice_1');//1つめ var ifm_4 = document.getElementById('nice_2');//2つめ var ifm_5 = document.getElementById('nice_3');//3つめ var ifm_6 = document.getElementById('nice_4');//4つめ var urls_random_1 = Math.floor( Math.random() * nice_a ); var urls_random_2 = Math.floor( Math.random() * nice_b ); var urls_random_3 = Math.floor( Math.random() * nice_c ); var urls_random_4 = Math.floor( Math.random() * nice_d ); var urls_nice_1 = new Array(); var urls_nice_2 = new Array(); var urls_nice_3 = new Array(); var urls_nice_4 = new Array(); /*1*/ urls_nice_1[0] = 'niceStore/niceStore_1.html'; urls_nice_1[1] = 'niceStore/niceStore_2.html'; urls_nice_1[2] = 'niceStore/niceStore_3.html'; /*2*/ urls_nice_2[0] = 'niceStore/niceStore_1.html'; urls_nice_2[1] = 'niceStore/niceStore_2.html'; urls_nice_2[2] = 'niceStore/niceStore_3.html'; /*3*/ urls_nice_3[0] = 'niceStore/niceStore_1.html'; urls_nice_3[1] = 'niceStore/niceStore_2.html'; urls_nice_3[2] = 'niceStore/niceStore_3.html'; /*4*/ urls_nice_4[0] = 'niceStore/niceStore_1.html'; urls_nice_4[1] = 'niceStore/niceStore_2.html'; urls_nice_4[2] = 'niceStore/niceStore_3.html'; ifm_3.src = urls_nice_1[s];//1 ifm_4.src = urls_nice_2[s];//2 ifm_5.src = urls_nice_3[s];//3 ifm_6.src = urls_nice_4[s];//4 } </script> 求める結果:ページをロードする度、それぞれのiframe内のURLがランダムで選定され 尚かつURLが被らないようにしたいです。 上記の内容で記述しますと、あたりまえですが表示されるURLが被ってしまいます。 これを回避したいのですがどうがご教授願いします。m(_ _)m

  • 画像をランダムな座標に一定の時間で表示する方法

    javascript勉強中の65歳の初心者です 画像を乱数で得た座標に一定の時間で表示したいと次の通り試行錯誤していますが、どうも最初の1個は表示されますが配列の2番目以降表示されません。 初歩的な質問で恐縮ですがご指導お願いします。 <html> <head> <title>テスト表示</title> </head> <body onload= "set()"> <script language="JavaScript"><!-- sx = new Array(); sy = new Array(); num = 20; var timer; var n; var i; var m; n = 0; function set(){ for (m=0; m<num; m++) { sx[m] = Math.floor(Math.random()*800); sy[m] = Math.floor(Math.random()*600); } setInterval("uncohyouji()", 2000); } function uncohyouji(){ styl = "<img src='unco1.gif'style='position:absolute;"; document.write(styl+sx[n]+"px;left:"+sy[n]+"px;' name='unco1"+n+"'>"); n++; }

  • 画像をランダムに表示するには

    <script language=JavaScript> <!-- var img=new Array(); img[0]='画像1'; img[1]='画像2'; img[2]='画像3'; img[3]='画像4'; img[4]='画像5'; ran_gazo=Math.floor(img.length * Math.random()); document.write('<IMG SRC='+img[ran_gazo]+'>'); //--></script><!--scripted by shotyan@dreamcity--> というのを使いますよね?(あるサイトで見つけました)でも、画像があるべき場所に「×」がついて、画像が出ないんです・・ どうしたら画像がランダムに表示されるんでしょうか。 教えてください。 そして、その画像を右上に固定したいんです。 注文多くてごめんなさい。

  • ランダムにページを表示するスクリプト

    最近社内のホームページを作ることになった初心者です。 トップページの中に3箇所、インラインフレームを使い別のページを 表示させるというものを考えております。 その際に、インラインフレーム内に表示させるページがランダムで選ばれるようにscriptを用いてやってみましたが、3箇所あるインラインフレームのうちの1箇所にしか表示されません・・・。 <script type="text/javascript"> window.onload = function(){ var c = 3; // var ifm = document.getElementById('aaa'); var ifm = document.getElementById('bbb'); var ifm = document.getElementById('ccc'); var r = Math.floor( Math.random() * c ); var urls = new Array(); urls[0] = 'http://www.co.jp'; urls[1] = 'http://www.co.jp'; urls[2] = 'http://www.co.jp'; ifm.src = urls[r]; } </script> あとは3箇所のフレーム内にIDを設定すれば上手く良くと思ったのですが、1箇所にしか表示されません;; 改善点などございましたらご教授いただけないでしょうか?

  • ブログトップにランダムで画像を表示させる方法

    ブログのトップに画像をランダムで表示させたいと思っています。 テンプレートはfc2の共有プラグインのsimple04を使っています。 <script language=”JavaScript”> var images = new Array(); /* 画像URLを表示させたい分だけ書き込むこと */ images[0] = “”; images[1] = “”; images[2] = “”; images[3] = “”; images[4] = “”; images[5] = “”; images[6] = “”; var rnd = Math.floor((Math.random() * 100)) % images.length; document.write(‘<img src=’,images[rnd],’ border=”0″>’); </script> 自分で調べてみてこのタグを使えばいいことはわかったのですが、 HTMLの所に貼るのかCSSのところに貼るのかわかりません。 回答よろしくお願いします。

  • 外部JSから読み込んだ文字列をフォームに表示

    ボタンを押した後で、文字列を外部JSからランダムに読み込ませて表示させることはできますか? HPで使用するものではなく個人的にTRPG(NPCの決定など)に使おうと思っています… 1つのページに5つほどランダムテキストを置いたのですが、ソースを見ると数が多くなってしまい後から文章を付け加えるのに苦労してしまうので、外部JSファイルから読み込ませることにしました。しかし、 var txt = new Array(); txt[0]="あああ"; txt[1]="いいい" txt[2]="ううう"; mmax = 3; txtno = Math.floor(Math.random() * mmax); document.write(txt[txtno]); 普通にこれを読み込むとページを開いた時から文字列が表示されてしまいます。 ボタンクリックでフォームに表示させることはできないかな?と思いましたが、どうもどうすればいいか分かりません…

  • このタグで文字の大きさを変えたいのですが、、、、

    <head> <title>文字色をリアルタイムに変える</title> <script Language="JavaScript"><!-- count = 0; function changeColor(str) { txt = document.all["strID"].innerText; c = str.charAt(count); txt = txt.fontcolor("#"+c+c+"0000"); document.all["strID"].innerHTML = txt; count++; if (count > str.length) count = 0; setTimeout("changeColor('"+str+"')",100); } // --></script> </head> <body onLoad="changeColor('0123456789abcdefedcba987654321')"> <div id="strID" style="font-weight:900">ここの文字の色が変わるよ~ん</div> </body>

    • ベストアンサー
    • HTML
  • 1~100の数字の9の倍数だけ同じ文字、他はランダム

    教えてくださいm(__)m タイトルの通り、0~100の数字の9の倍数だけ同じ文字、他はランダムになるようにするにはどうやって組み立てたらいいのでしょうか? 0~100の数字のうち、9、18、27、36、45、54、63、72、81、90、99だけ同じ文字(例えばA)が表示されるようにしたいのです。でも更新するたび、ランダムに文字(例えばB)が変わります。 その数字は適当な文字(9の倍数以外の文字)がランダムに表示されます。 http://search.net-newbie.com/php/function.array-rand.html ↑のように「array_rand」を使えばいいと思うのですが・・よくわからず・・・(>0<) どういう風にプログラムを書いたらいいのでしょうか。 分かる方いましたら、お願いしますm(__)m

    • ベストアンサー
    • PHP
  • 画像からランダムリンク

    Javascriptでランダムリンクをする場合、 <form> <input type=button onClick="jump()" value="ランダム"> </form> <script> url = new Array(); url[0] = "00.html"; url[1] = "01.html"; url[2] = "02.html"; function jump() { p = Math.round(Math.random() * (url.length - 1)); parent.top.document.location = url[p]; } </script> という記述を使うのは知っているんですが、 「ランダムリンク」というボタンではなく、 画像をクリックしてランダムリンクさせることは可能でしょうか? Javascriptでは無理な場合、 画像からランダムリンクを張る方法はありますか? CGI等でも構いませんので、お勧めがあれば教えてください。

専門家に質問してみよう