- ベストアンサー
javascriptで文字の色を変える方法
- javascriptを使用して、指定した色の文字を表示させる方法について教えてください。
- javascriptのコードを使い、黒、ディムグレイ、灰、黒灰、銀、ライト灰、白の順で文字の色を変えることができる方法について教えてください。
- HTMLの<span>タグとjavascriptを組み合わせて、文字の色を変える方法を教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#3です。まちがいあるので、ていせい。 const hoge (element, css, color0/*[r,g,b]*/, color1/*[r,g,b]*/) { を const hoge = function (element, css, color0/*[r,g,b]*/, color1/*[r,g,b]*/) { に、 いやぁ~まいどのことで、もうしわけない。
その他の回答 (3)
- babu_baboo
- ベストアンサー率51% (268/525)
あたらしめの Firefox ならうごくよ。 Yコンビネーターは、つかってみたかっただけで、つかいこなせていません(泣) ぜんかくくうはくは、はんかんにしてね ようそのてきすとのーどをあつめ、それらを1もじだけのspanでかこい、いろをつけました。 <!DOCTYPE html> <title></title> <p id="tx0">abcdefghijklmnopqrstuvwxyz</p> <p id="tx1">abcdefghijklmnopqrstuvwxyz</p> <script type="application/javascript; version=1.8"> const Y = function (f) (function (x) function (arg) f (x (x)) (arg)) (function (x) function (arg) f (x (x)) (arg)); const List = (function (first, rest, restmap) (function (node) Array.prototype.concat.apply (first (node), Array.map (rest (node), restmap)))) const lsSelf = (function (node) [].concat (node || [])); const lsChild = (function (node) Array.slice (node.childNodes)); const lsDescendantOrSelf = Y (function (again) List (lsSelf, lsChild, again)); const IsTextNode = (function (node) node.nodeType == 3); const isolate = (function (node) let (d = node.ownerDocument) let (s = d.createElement ('SPAN')) let (t = d.createTextNode ('')) let (p = node.parentNode) let (c = node.nodeValue.split ('')) (p.removeChild (node), s.appendChild (t), c.map (function (a) p.appendChild ((t.nodeValue = a,s.cloneNode (true)))))); const hoge (element, css, color0/*[r,g,b]*/, color1/*[r,g,b]*/) { if (! element.hasChildNodes ()) return; let span = lsDescendantOrSelf (element) .filter (IsTextNode) .reduce ((function (a, n) a.concat (isolate (n))), []); let len = span.length; let r = (color1[0] - color0[0]) /len; let g = (color1[1] - color0[1]) /len; let b = (color1[2] - color0[2]) /len; for (let i = 0, s; s = span[i]; i++) { s.style[css] = 'rgb(' +[ color0[0] + r * i |0, color0[1] + g * i |0, color0[2] + b * i |0 ].join (',') +')'; } } hoge (document.getElementById('tx0'), 'color', [0,0,255], [250,250,0] ); hoge (document.getElementById('tx1'), 'color', [250,250,250], [0,0,0]); hoge (document.getElementById('tx1'), 'backgroundColor', [0,0,0], [250,250,250]); </script>
- neko-ten
- ベストアンサー率55% (1287/2335)
うまくいかないならうまくいかないときの症状書きましょう。 とりあえず、なぜJavaScriptとして書いているのか謎。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>文字の色を変える、</title> </head> <body bgcolor="#ffffff"> <span style="border:thin solid red"><span style="color:white;background-color:#000000">Black</span> <span style="color:white;background-color:#696969">Dimm gray</span> <span style="color:white;background-color:#808080">Gray</span> <span style="color:black;background-color:#A9A9A9">Dirk gray</span> <span style="color:black;background-color:#C0C0C0">Silver</span> <span style="color:black;background-color:#D3D3D3">Light gray</span> <span style="color:black;background-color:#FFFFFF">White</span> </body> </html> 動的に変えないんだから別にこれでいいはず。 JavaScriptとしてみても、構文にすらなってないので・・・。
- askaaska
- ベストアンサー率35% (1455/4149)
先ほどの質問がなんだかわらないけどとりあえず <script language="JavaScript" type="text/javascript"> <!-- //#RRGGBB形式による色の設定 var myStr; document.write //--> </script> が不要ね