我有一行JavaScript,允许我在每次加载页面时使我的网页背景颜色不同:
document.getElementById("band").style.background = '#'+(Math.random()*0xFFFFFF<<0).toString(16);
为了可见度,我希望字体为黑色或白色,具体取决于背景是暗还是浅。
例如,我认为十六进制的“中途”点是#800000。
如果十六进制数小于800000,我希望我的脚本告诉我的网页使用白色字体,如果十六进制数大于800000,我希望使用黑色字体。
答案 0 :(得分:1)
您可以使用TinyColor库
var color = '#'+(Math.random()*0xFFFFFF<<0).toString(16);
document.write("<b style=\"color:" + color + ";\">" + color + "<\/b> is ");
var c = tinycolor(color);
if (c.isDark())
document.write("Dark");
else
document.write("Light");
<script src="https://rawgit.com/bgrins/TinyColor/master/tinycolor.js"></script>