之前做一随机获取颜色这一功能,都是简单的创建一个固定的颜色数组,然后用随机数取出数组的值,这样就只是随机生成自己设定的值,不是真正意义上的随机生成,那要肿么生成?废话不多说,直接上代码。
function randoms(length,chars){ var maxNum=chars.length-1; var hex=''; var num=0; for(i=0;i<length;i++){ num=rand(0,maxNum-1); hex+=chars.slice(num,num+1); } return hex; } function rand(minNum,maxNum){ var choices=maxNum-minNum; var num=minMax+Math.round(Math.random()*choices) return paseInt(num); }
randoms(6,'0123456789ABCDEF');这样就能随机生成6个字符,但hex色值是‘#123abc’这种格式的,所以得在6个字符前加上‘#’。
var color="#"+randoms(6,'0123456789ABCDEF');
原文:http://www.cnblogs.com/zhanqc/archive/2012/12/08/randoms.html