HEX в RGB или RGB в HEX

rgb(,,)

<input type="color"/> отдаёт формат цвета в HEX. Для того, чтобы перевести его в функцию RGB (удобна для реализации прозрачности), можно воспользоваться JavaScript ниже:

<script>

function toR(h) { return parseInt((cutHex(h)).substring(0,2),16) }
function toG(h) { return parseInt((cutHex(h)).substring(2,4),16) }
function toB(h) { return parseInt((cutHex(h)).substring(4,6),16) }
function cutHex(h) { return (h.charAt(0)=="#") ? h.substring(1,7) : h}
function changecolor(){
 var h = document.getElementById('h').value;
 document.getElementById('r').value = toR(h);
 document.getElementById('g').value = toG(h);
 document.getElementById('b').value = toB(h);
}

function toHEX(r, g, b) { return '#' + ((b | g << 8 | r << 16) | 1 << 24).toString(16).slice(1); }
function changecolor1(){
 var r = document.getElementById('r').value;
 var g = document.getElementById('g').value;
 var b = document.getElementById('b').value;
 document.getElementById('h').value = toHEX(r,g,b);
}
</script>

<input id="h" oninput="changecolor();" value="#ff0000" type="text">  
<input id="r" oninput="changecolor1();" value="255" type="text">
<input id="g" oninput="changecolor1();" value="0" type="text">
<input id="b" oninput="changecolor1();" value="0" type="text">

Источники: www.javascripter.net, www.cnblogs.com

в f t
наверх ↑

Комментариев нет: