鉴于此功能,我想更换一个随机颜色生成的颜色 。 css
document.overlay = GPolyline.fromEncoded({ color: "#0000FF", weight: 10, points: encoded_points, zoomFactor: 32, levels: encoded_levels, numLevels: 4 });
我该怎么作? html
我喜欢这个: '#' + (Math.random().toString(16) + "000000").substring(2,8)
jquery
个人版本: ajax
function RandomColor() { var hex = (Math.round(Math.random()*0xffffff)).toString(16); while (hex.length < 6) hex = "0" + hex; return hex; }
您能够经过多种方式来完成此任务。 这是我作的一些事情: api
生成六个随机十六进制数字(0-F) dom
function randColor() { for (var i=0, col=''; i<6; i++) { col += (Math.random()*16|0).toString(16); } return '#'+col; }
极短的单缸 ide
'#'+Math.random().toString(16).slice(-6)
生成单个RGB份量(00-FF) google
function randColor2() { var r = ('0'+(Math.random()*256|0).toString(16)).slice(-2), g = ('0'+(Math.random()*256|0).toString(16)).slice(-2), b = ('0'+(Math.random()*256|0).toString(16)).slice(-2); return '#' +r+g+b; }
过分设计的十六进制字符串(XOR 3一块儿输出以造成颜色) spa
function randColor3() { var str = Math.random().toString(16) + Math.random().toString(16), sg = str.replace(/0./g,'').match(/.{1,6}/g), col = parseInt(sg[0], 16) ^ parseInt(sg[1], 16) ^ parseInt(sg[2], 16); return '#' + ("000000" + col.toString(16)).slice(-6); }
使用Google搜索能够很容易地找到它: 设计
function random_color(format) { var rint = Math.round(0xffffff * Math.random()); switch(format) { case 'hex': return ('#0' + rint.toString(16)).replace(/^#0([0-9a-f]{6})$/i, '#$1'); break; case 'rgb': return 'rgb(' + (rint >> 16) + ',' + (rint >> 8 & 255) + ',' + (rint & 255) + ')'; break; default: return rint; break; } }
更新后的版本:
function random_color( format ){ var rint = Math.floor( 0x100000000 * Math.random()); switch( format ){ case 'hex': return '#' + ('00000' + rint.toString(16)).slice(-6).toUpperCase(); case 'hexa': return '#' + ('0000000' + rint.toString(16)).slice(-8).toUpperCase(); case 'rgb': return 'rgb(' + (rint & 255) + ',' + (rint >> 8 & 255) + ',' + (rint >> 16 & 255) + ')'; case 'rgba': return 'rgba(' + (rint & 255) + ',' + (rint >> 8 & 255) + ',' + (rint >> 16 & 255) + ',' + (rint >> 24 & 255)/255 + ')'; default: return rint; } }
使用getRandomColor()
代替"#0000FF"
:
function getRandomColor() { var letters = '0123456789ABCDEF'; var color = '#'; for (var i = 0; i < 6; i++) { color += letters[Math.floor(Math.random() * 16)]; } return color; } function setRandomColor() { $("#colorpad").css("background-color", getRandomColor()); }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="colorpad" style="width:300px;height:300px;background-color:#000"> </div> <button onclick="setRandomColor()">Random Color</button>