pickTextColorBasedOnBgColorAdvanced(bgColor, lightColor="#fff", darkColor="#4c4c4c") {
var color = (bgColor.charAt(0) === '#') ? bgColor.substring(1, 7) : bgColor;
var r = parseInt(color.substring(0, 2), 16); // hexToR
var g = parseInt(color.substring(2, 4), 16); // hexToG
var b = parseInt(color.substring(4, 6), 16); // hexToB
return (((r * 0.299) + (g * 0.587) + (b * 0.114)) > 186) ?
darkColor : lightColor;
}
使用的时候
const footerColor = '#0c8484';
document.documentElement.style.setProperty('--footer-color', footerColor);
document.documentElement.style.setProperty('--footer-font-color', pickTextColorBasedOnBgColorAdvanced(footerColor));
css 中
color: var(--footer-font-color)
background-color: var(--footer-color)