zoukankan      html  css  js  c++  java
  • 颜色转换

    以蓝色为例,#0000FF应该被表示成rgb(0,0,255)。

    我们将函数命名为getRGB()

    (可以将字符串视为数组,这个数组的元素为字符)

    function getRGB(color) {
      var rgb = [parseInt('0x'+color.slice(1,3)),parseInt('0x'+color.slice(3,5)),parseInt('0x'+color.slice(5,7))];
      return "rgb(" + rgb[0] + ","  + rgb[1] + "," +rgb[2] +")" ;       
    }

     

    在控制台中,我们发现:当我们缩写16进制颜色的时候,就会出现NaN;

    (这个例子我练习了之前学到的数组的slice方法)

    经过一段时间的学习,我们可以试试这样

      

            var getRGB = function(oRgb) {
                var color = [],
                    rgb   = [];
                oRgb = oRgb.replace(/#/, "");
                if (oRgb.length == 3) {
                    var tmp = [];
                    for (var i = 0; i < 3; i++) {
                        tmp.push(oRgb.charAt(i) + oRgb.charAt(i));
                    }
                    oRgb = tmp.join("");
                }
                for (var i = 0; i < 3; i++) {
                    color[i] = "0x" + oRgb.substr(i + 2, 2);
                    rgb.push(parseInt(Number(color[i])));
                }
                return "rgb(" +  rgb.join(",") + ")";
            }
    
    

      

      

  • 相关阅读:
    【JSP】jQuery Deferred exception successed is not defined
    onclick事件传递变量参数&拼接字符串
    JQuery
    设计模式
    拖拽-原型继承案例
    继承
    原型
    闭包
    promise
    jsonp
  • 原文地址:https://www.cnblogs.com/yechanglv/p/6937981.html
Copyright © 2011-2022 走看看