mockjs2
Version:
生成随机数据 & 拦截 Ajax 请求 mod版
137 lines (121 loc) • 5.22 kB
JavaScript
/*
## Color
http://llllll.li/randomColor/
A color generator for JavaScript.
randomColor generates attractive colors by default. More specifically, randomColor produces bright colors with a reasonably high saturation. This makes randomColor particularly useful for data visualizations and generative art.
http://randomcolour.com/
var bg_colour = Math.floor(Math.random() * 16777215).toString(16);
bg_colour = "#" + ("000000" + bg_colour).slice(-6);
document.bgColor = bg_colour;
http://martin.ankerl.com/2009/12/09/how-to-create-random-colors-programmatically/
Creating random colors is actually more difficult than it seems. The randomness itself is easy, but aesthetically pleasing randomness is more difficult.
https://github.com/devongovett/color-generator
http://www.paulirish.com/2009/random-hex-color-code-snippets/
Random Hex Color Code Generator in JavaScript
http://chancejs.com/#color
chance.color()
// => '#79c157'
chance.color({format: 'hex'})
// => '#d67118'
chance.color({format: 'shorthex'})
// => '#60f'
chance.color({format: 'rgb'})
// => 'rgb(110,52,164)'
http://tool.c7sky.com/webcolor
网页设计常用色彩搭配表
https://github.com/One-com/one-color
An OO-based JavaScript color parser/computation toolkit with support for RGB, HSV, HSL, CMYK, and alpha channels.
API 很赞
https://github.com/harthur/color
JavaScript color conversion and manipulation library
https://github.com/leaverou/css-colors
Share & convert CSS colors
http://leaverou.github.io/css-colors/#slategray
Type a CSS color keyword, #hex, hsl(), rgba(), whatever:
色调 hue
http://baike.baidu.com/view/23368.htm
色调指的是一幅画中画面色彩的总体倾向,是大的色彩效果。
饱和度 saturation
http://baike.baidu.com/view/189644.htm
饱和度是指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。含色成分越大,饱和度越大;消色成分越大,饱和度越小。
亮度 brightness
http://baike.baidu.com/view/34773.htm
亮度是指发光体(反光体)表面发光(反光)强弱的物理量。
照度 luminosity
物体被照亮的程度,采用单位面积所接受的光通量来表示,表示单位为勒[克斯](Lux,lx) ,即 1m / m2 。
http://stackoverflow.com/questions/1484506/random-color-generator-in-javascript
var letters = '0123456789ABCDEF'.split('')
var color = '#'
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)]
}
return color
// 随机生成一个无脑的颜色,格式为 '#RRGGBB'。
// _brainlessColor()
var color = Math.floor(
Math.random() *
(16 * 16 * 16 * 16 * 16 * 16 - 1)
).toString(16)
color = "#" + ("000000" + color).slice(-6)
return color.toUpperCase()
*/
var Convert = require('./color_convert')
var DICT = require('./color_dict')
module.exports = {
// 随机生成一个有吸引力的颜色,格式为 '#RRGGBB'。
color: function(name) {
if (name || DICT[name]) return DICT[name].nicer
return this.hex()
},
// #DAC0DE
hex: function() {
var hsv = this._goldenRatioColor()
var rgb = Convert.hsv2rgb(hsv)
var hex = Convert.rgb2hex(rgb[0], rgb[1], rgb[2])
return hex
},
// rgb(128,255,255)
rgb: function() {
var hsv = this._goldenRatioColor()
var rgb = Convert.hsv2rgb(hsv)
return 'rgb(' +
parseInt(rgb[0], 10) + ', ' +
parseInt(rgb[1], 10) + ', ' +
parseInt(rgb[2], 10) + ')'
},
// rgba(128,255,255,0.3)
rgba: function() {
var hsv = this._goldenRatioColor()
var rgb = Convert.hsv2rgb(hsv)
return 'rgba(' +
parseInt(rgb[0], 10) + ', ' +
parseInt(rgb[1], 10) + ', ' +
parseInt(rgb[2], 10) + ', ' +
Math.random().toFixed(2) + ')'
},
// hsl(300,80%,90%)
hsl: function() {
var hsv = this._goldenRatioColor()
var hsl = Convert.hsv2hsl(hsv)
return 'hsl(' +
parseInt(hsl[0], 10) + ', ' +
parseInt(hsl[1], 10) + ', ' +
parseInt(hsl[2], 10) + ')'
},
// http://martin.ankerl.com/2009/12/09/how-to-create-random-colors-programmatically/
// https://github.com/devongovett/color-generator/blob/master/index.js
// 随机生成一个有吸引力的颜色。
_goldenRatioColor: function(saturation, value) {
this._goldenRatio = 0.618033988749895
this._hue = this._hue || Math.random()
this._hue += this._goldenRatio
this._hue %= 1
if (typeof saturation !== "number") saturation = 0.5;
if (typeof value !== "number") value = 0.95;
return [
this._hue * 360,
saturation * 100,
value * 100
]
}
}