• js实现十六进制颜色转化成rgb颜色


    /*
       @author:luowen
       @time:2013-10-08
       @desc:js to rgb color           
    */
    <!doctype html>
    <html>
        <head>
            <title>js to rgb color</title>
            <charset='utf-8' />
        </head>
        <body>
            <input type='text' id='color' />
            <button id="change">change to ten</button>
            <span>eg: (#fff) ==> rgb(255,255,255)</span>
            <br />
            <input type="text" id="res" value="" />
        </body>
            <script type="text/javascript">
            //获取对象
            function $(id){
                return document.getElementById(id);
            }
            //响应点击函数
            $('change').onclick = function(){
                    if($('color').value == ''){
                        alert('请输入需要转化的值如:#fff');
                        return;
                    }
                    toRGB($('color').value);
            }
            function toRGB(msg){
                    var re = new RegExp(/^#([0-9a-fA-F]){3,6}$/);    
                    var flag = msg.match(re);
                    //alert(flag);
                    if(flag == null){
                        //alert(msg);
                        $('res').value = msg;
                        $('res').style.color = 'red';
                    }
                    else{
                        //#11 11 11
                        var resStr = msg.substr(1);
                        
                        var resArr = spiltArr(resStr);
                        
                        var rgb = toTen(resArr);
                        //console.log(resTen);
                        //alert('rgb'+'('+rgb+')');
                        $('res').value = 'rgb'+'('+rgb+')';
                        $('res').style.color = 'blue';
                    }
                    
            }
            //将拿到的字符转化成十进制
            function toTen(arr){
                var rgb = ['','',''];
                for(var i = 0;i < 3; i++){
                    rgb[i] = parseInt(arr[i],16);    
                }
                return rgb;
            }
            //将字符串分割成(cc,dd,ff)形式
            function spiltArr(str){
                var tmp = ['','',''];
                var strLen = str.length;
                if(strLen == 3){
                    var a = str.substr(0,1);    
                    var b = str.substr(1,1);    
                    var c = str.substr(2,1);
                    tmp[0] = a + a;
                    tmp[1] = b + b;
                    tmp[2] = c + c;
                    return tmp;    
                }
                else if(strLen == 6){
                    tmp[0] = str.substr(0,2);    
                    tmp[1] = str.substr(2,2);    
                    tmp[2] = str.substr(4,2);    
                    return tmp;
                }
            }
    
        </script>
        </html>
      
  • 相关阅读:
    注册审核
    静态表单验证
    多条件查询
    0623TP框架联系
    0618框架 增删改练习
    php框架 数据添加
    0616框架查询
    0614空操作方法 空控制器 跨控制器调用 命名空间
    php 0613框架基础
    php查询
  • 原文地址:https://www.cnblogs.com/luowen/p/3357598.html
Copyright © 2020-2023  润新知