rgb2hex.js

/*http://stackoverflow.com/questions/24341507/get-background-colour-from-linear-gradient-color-value*/

by guest271314

HTML

<div></div>

CSS

div {
    background : linear-gradient(to right, #fff 87%, rgba(238, 237, 233, 0) 100%);
    background:linear-gradient(to right, #fff 87%, rgba(238, 237, 233, 0) 100%);
}

JavaScript

$(function () {
          (function ($) {
            $.fn.rgb2hex = function (prop) {
              return $.map(
                  $(this)
                  .css(prop)
                  .split(/([rgb|rgba|+[\(]+[\d]+[\,]+[ \d]+[\, \d]+[ \d]+[\)])/)
                   , function (value, index) {
                         if (value.indexOf("rgb") != -1) {
                            var _rgba = function () {                               
                                return $.map(value
                                       .replace(/[rgba]|[rgb]|[\(|\)]/g, "")
                                       .split(",").map(function(r) {
                                          return parseInt(r, 10)
                                        }), function (k, v) {
                                    var h = k.toString(16);
                                    var hex = h.length === 1 ? "0" + h : h;
                                    var _hex = [];
                                    _hex.push(hex);
                                    return _hex;
                                });
                            };
                            return $.map([$.makeArray([], _rgba())]
                                   , function (v, i) {
                                     return (v.length === 4 
                                            ? "#" + v.slice(0, 3).join("") 
                                            : "#" + v.join("")
                                            );
                            });
                        };
                    });
                };
            })(jQuery);

        console.log($("div").css("background")
                    , $("div").rgb2hex("background")
                   );
        $("div").html("css background: " 
                      + "<br /><br />" + $("div", this).css("background") 
                      + "<br /><br />" + "rgba to hex: " 
                      + "<br /><br />" + $("div", this).rgb2hex("background")
    ...