カラーコードの変換
JavascriptでtargetのCSSによる色指定を取得する方法。
var color = target.style.color.match(/^rgb\(\s*(\d+),\s*(\d+),\s*(\d+)/); var r = parseInt(RegExp.$1).toString(16); r = (r.length==1) ? '0'+r : r; var g = parseInt(RegExp.$2).toString(16); g = (g.length==1) ? '0'+g : g; var b = parseInt(RegExp.$3).toString(16); b = (b.length==1) ? '0'+b : b; alert('#'+r+g+b);
一旦parseIntして数値型にしてから、toString(16)で16進に変換するのがミソ。
もうちょっと綺麗に書きたい気もするけど、とりあえずメモ。