JavaScript实现16进制颜色值转RGB的方法

Habiba ·
更新时间:2024-11-13
· 588 次阅读

本文实例讲述了JavaScript实现16进制颜色值转RGB的方法。分享给大家供大家参考。具体实现方法如下:

代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>16进制颜色值转RGB</title>
        <style>
        *{margin:0;padding:0;font-family:'Microsoft yahei'}
        .replace{width:400px;height:210px;margin:0 auto;padding-top:40px;}
        .title{text-align:center;display:block}
          form{width:200px;margin:30px auto;}
          input{outline:none;}
          input[type="button"]{cursor:pointer;}
        </style>
        <script>
        function hexToR(h) {
            return parseInt((cutHex(h)).substring(0, 2), 16)
        }
        function hexToG(h) {
            return parseInt((cutHex(h)).substring(2, 4), 16)
        }
        function hexToB(h) {
            return parseInt((cutHex(h)).substring(4, 6), 16)
        }
        function cutHex(h) {
            return h.charAt(0) == "#" ? h.substring(1, 7) : h
        }
        function setBgColorById(id, sColor) {
            var elems;
            if (document.getElementById) {
                if (elems = document.getElementById(id)) {
                    if (elems.style) elems.style.backgroundColor = sColor;
                }
            }
         }
        </script>
        </head>
        <body>
            <div class="replace">
                <span class="title">JavaScript原生16进制颜色值转RGB值</span>
                 <form name="rgb">
                     <input value="ffffff" maxlength="7" size="16" name="hex" />
               <input onclick="setBgColorById('colorSample',this.form.hex.value);
               this.form.r.value=hexToR(this.form.hex.value);
               this.form.g.value=hexToG(this.form.hex.value);
               this.form.b.value=hexToB(this.form.hex.value);" value="转换" type="button" name="btn"/>
               <br /><br />
                   R:<input style="width:30px" size="3" name="r" />
                G:<input style="width:30px" size="3" name="g" />
                B:<input style="width:30px" size="3" name="b" />
                 </form>               
            </div>
</body>
</html>

运行效果如下图所示:

希望本文所述对大家的javascript程序设计有所帮助。



颜色值 16进制颜色 方法 16进制 进制 rgb JavaScript

需要 登录 后方可回复, 如果你还没有账号请 注册新账号